hyperx.api
1from __future__ import annotations 2from ..library import _api, _types 3 4from ..api import types 5from typing import TypeVar, Generic, overload 6from enum import Enum 7from System.Collections.Generic import List, IEnumerable, Dictionary, HashSet 8from System.Threading.Tasks import Task 9from System import Guid, DateTime, Action 10 11from abc import ABC, abstractmethod 12 13T = TypeVar('T') 14 15def MakeCSharpIntList(ints: list[int]) -> List[int]: 16 intsList = List[int]() 17 if ints is not None: 18 for thing in ints: 19 if thing is not None: 20 intsList.Add(thing) 21 22 return intsList 23 24class AnalysisResultToReturn(Enum): 25 ''' 26 Used to specify which analysis result to return. 27 ''' 28 Limit = 1 29 Ultimate = 2 30 Minimum = 3 31 32class CollectionModificationStatus(Enum): 33 ''' 34 Indicates whether a collection was manipulated successfully. 35 ''' 36 Success = 1 37 DuplicateIdFailure = 2 38 EntityMissingAddFailure = 3 39 EntityMissingRemovalFailure = 4 40 FemConnectionFailure = 5 41 42class CreateDatabaseStatus(Enum): 43 Success = 1 44 TemplateNotFound = 2 45 ImproperExtension = 3 46 47class MaterialCreationStatus(Enum): 48 ''' 49 Indicates whether a material was created successfully. 50 If not, this indicates why the material was not created. 51 ''' 52 Success = 1 53 DuplicateNameFailure = 2 54 DuplicateFemIdFailure = 3 55 MissingMaterialToCopy = 4 56 57class DbForceUnit(Enum): 58 Pounds = 1 59 Newtons = 2 60 Dekanewtons = 4 61 62class DbLengthUnit(Enum): 63 Inches = 1 64 Feet = 2 65 Meters = 3 66 Centimeters = 4 67 Millimeters = 5 68 69class DbMassUnit(Enum): 70 Pounds = 1 71 Kilograms = 2 72 Slinches = 4 73 Slugs = 5 74 Megagrams = 6 75 76class DbTemperatureUnit(Enum): 77 Fahrenheit = 1 78 Rankine = 2 79 Celsius = 3 80 Kelvin = 4 81 82class ProjectCreationStatus(Enum): 83 ''' 84 Indicates whether a project was created successfully. 85 If not, this indicates why the project was not created. 86 ''' 87 Success = 1 88 Failure = 2 89 DuplicateNameFailure = 3 90 91class ProjectDeletionStatus(Enum): 92 ''' 93 Indicates whether a project was deleted successfully. 94 If not, this indicates why the project was not deleted. 95 ''' 96 Success = 1 97 Failure = 2 98 ProjectDoesNotExistFailure = 3 99 ActiveProjectFailure = 4 100 101class SetUnitsStatus(Enum): 102 Success = 1 103 Error = 2 104 MixedUnitSystemError = 3 105 106class PropertyAssignmentStatus(Enum): 107 Success = 1 108 Failure = 2 109 FailureCollectionAssignment = 3 110 PropertyIsNull = 4 111 PropertyNotFoundInDb = 5 112 EmptyCollection = 6 113 IncompatiblePropertyAssignment = 7 114 EntityDoesNotExist = 8 115 116class RundeckBulkUpdateStatus(Enum): 117 NoRundecksUpdated = 0 118 Success = 1 119 InputFilePathDoesNotExist = 2 120 ResultFilePathDoesNotExist = 3 121 InputFilePathAlreadyExists = 4 122 ResultFilePathAlreadyExists = 5 123 InvalidPathCount = 6 124 125class RundeckCreationStatus(Enum): 126 Success = 1 127 InputFilePathAlreadyExists = 2 128 ResultFilePathAlreadyExists = 3 129 130class RundeckRemoveStatus(Enum): 131 Success = 1 132 InvalidId = 2 133 CannotRemoveLastRundeck = 3 134 CannotDeletePrimaryRundeck = 4 135 RundeckNotFound = 5 136 137class RundeckUpdateStatus(Enum): 138 Success = 1 139 InvalidId = 2 140 IdDoesNotExist = 3 141 RundeckAlreadyPrimary = 4 142 InputPathInUse = 5 143 ResultPathInUse = 6 144 RundeckCommitFailure = 7 145 InputPathDoesNotExist = 8 146 ResultPathDoesNotExist = 9 147 148class ZoneCreationStatus(Enum): 149 ''' 150 Indicates whether a zone was created successfully. 151 If not, this indicates why the zone was not created. 152 ''' 153 Success = 1 154 DuplicateNameFailure = 2 155 InvalidFamilyCategory = 3 156 157class ZoneIdUpdateStatus(Enum): 158 Success = 1 159 DuplicateIdFailure = 2 160 IdOutOfRangeError = 3 161 162class UnitSystem(Enum): 163 ''' 164 Unit system specified when starting a scripting Application. 165 ''' 166 English = 1 167 SI = 2 168 169class IdEntity(ABC): 170 ''' 171 Represents an entity with an ID. 172 ''' 173 def __init__(self, idEntity: _api.IdEntity): 174 self._Entity = idEntity 175 176 @property 177 def Id(self) -> int: 178 return self._Entity.Id 179 180 181class IdNameEntity(IdEntity): 182 ''' 183 Represents an entity with an ID and Name. 184 ''' 185 def __init__(self, idNameEntity: _api.IdNameEntity): 186 self._Entity = idNameEntity 187 188 @property 189 def Name(self) -> str: 190 return self._Entity.Name 191 192class AnalysisDefinition(IdNameEntity): 193 def __init__(self, analysisDefinition: _api.AnalysisDefinition): 194 self._Entity = analysisDefinition 195 196 @property 197 def AnalysisId(self) -> int: 198 return self._Entity.AnalysisId 199 200 @property 201 def Description(self) -> str: 202 return self._Entity.Description 203 204 205class Margin: 206 ''' 207 Represents a Margin result. 208 ''' 209 def __init__(self, margin: _api.Margin): 210 self._Entity = margin 211 212 @property 213 def AdjustedMargin(self) -> float: 214 return self._Entity.AdjustedMargin 215 216 @property 217 def IsFailureCode(self) -> bool: 218 return self._Entity.IsFailureCode 219 220 @property 221 def IsInformationalCode(self) -> bool: 222 return self._Entity.IsInformationalCode 223 224 @property 225 def MarginCode(self) -> types.MarginCode: 226 return types.MarginCode[self._Entity.MarginCode.ToString()] 227 228 229class AnalysisResult(ABC): 230 ''' 231 Contains result information for an analysis 232 ''' 233 def __init__(self, analysisResult: _api.AnalysisResult): 234 self._Entity = analysisResult 235 236 @property 237 def LimitUltimate(self) -> types.LimitUltimate: 238 ''' 239 Limit vs Ultimate loads. 240 ''' 241 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()] 242 243 @property 244 def LoadCaseId(self) -> int: 245 return self._Entity.LoadCaseId 246 247 @property 248 def Margin(self) -> Margin: 249 ''' 250 Represents a Margin result. 251 ''' 252 result = self._Entity.Margin 253 return Margin(result) if result is not None else None 254 255 @property 256 def AnalysisDefinition(self) -> AnalysisDefinition: 257 result = self._Entity.AnalysisDefinition 258 return AnalysisDefinition(result) if result is not None else None 259 260 261class JointAnalysisResult(AnalysisResult): 262 def __init__(self, jointAnalysisResult: _api.JointAnalysisResult): 263 self._Entity = jointAnalysisResult 264 265 @property 266 def ObjectId(self) -> types.JointObject: 267 ''' 268 Enum identifying the possible entities within a joint 269 ''' 270 return types.JointObject[self._Entity.ObjectId.ToString()] 271 272 273class ZoneAnalysisConceptResult(AnalysisResult): 274 def __init__(self, zoneAnalysisConceptResult: _api.ZoneAnalysisConceptResult): 275 self._Entity = zoneAnalysisConceptResult 276 277 @property 278 def ConceptId(self) -> types.FamilyConceptUID: 279 return types.FamilyConceptUID[self._Entity.ConceptId.ToString()] 280 281 282class ZoneAnalysisObjectResult(AnalysisResult): 283 def __init__(self, zoneAnalysisObjectResult: _api.ZoneAnalysisObjectResult): 284 self._Entity = zoneAnalysisObjectResult 285 286 @property 287 def ObjectId(self) -> types.FamilyObjectUID: 288 return types.FamilyObjectUID[self._Entity.ObjectId.ToString()] 289 290 291class AssignableProperty(IdNameEntity): 292 def __init__(self, assignableProperty: _api.AssignableProperty): 293 self._Entity = assignableProperty 294 295 296class AssignablePropertyWithFamilyCategory(AssignableProperty): 297 def __init__(self, assignablePropertyWithFamilyCategory: _api.AssignablePropertyWithFamilyCategory): 298 self._Entity = assignablePropertyWithFamilyCategory 299 300 @property 301 def FamilyCategory(self) -> types.FamilyCategory: 302 return types.FamilyCategory[self._Entity.FamilyCategory.ToString()] 303 304 305class FailureObjectGroup(IdNameEntity): 306 def __init__(self, failureObjectGroup: _api.FailureObjectGroup): 307 self._Entity = failureObjectGroup 308 309 @property 310 def ObjectGroup(self) -> types.ObjectGroup: 311 return types.ObjectGroup[self._Entity.ObjectGroup.ToString()] 312 313 @property 314 def IsEnabled(self) -> bool: 315 return self._Entity.IsEnabled 316 317 @property 318 def LimitUltimate(self) -> types.LimitUltimate: 319 ''' 320 Limit vs Ultimate loads. 321 ''' 322 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()] 323 324 @property 325 def RequiredMargin(self) -> float: 326 return self._Entity.RequiredMargin 327 328 @IsEnabled.setter 329 def IsEnabled(self, value: bool) -> None: 330 self._Entity.IsEnabled = value 331 332 @LimitUltimate.setter 333 def LimitUltimate(self, value: types.LimitUltimate) -> None: 334 self._Entity.LimitUltimate = _types.LimitUltimate(value.value) 335 336 @RequiredMargin.setter 337 def RequiredMargin(self, value: float) -> None: 338 self._Entity.RequiredMargin = value 339 340 341class FailureSetting(IdNameEntity): 342 ''' 343 Setting for a Failure Mode or a Failure Criteria. 344 ''' 345 def __init__(self, failureSetting: _api.FailureSetting): 346 self._Entity = failureSetting 347 348 @property 349 def CategoryId(self) -> int: 350 return self._Entity.CategoryId 351 352 @property 353 def DataType(self) -> types.UserConstantDataType: 354 return types.UserConstantDataType[self._Entity.DataType.ToString()] 355 356 @property 357 def DefaultValue(self) -> str: 358 return self._Entity.DefaultValue 359 360 @property 361 def Description(self) -> str: 362 return self._Entity.Description 363 364 @property 365 def EnumValues(self) -> dict[int, str]: 366 enumValuesDict = {} 367 for kvp in self._Entity.EnumValues: 368 enumValuesDict[int(kvp.Key)] = str(kvp.Value) 369 370 return enumValuesDict 371 372 @property 373 def PackageId(self) -> int: 374 return self._Entity.PackageId 375 376 @property 377 def PackageSettingId(self) -> int: 378 return self._Entity.PackageSettingId 379 380 @property 381 def UID(self) -> Guid: 382 return self._Entity.UID 383 384 @property 385 def Value(self) -> str: 386 return self._Entity.Value 387 388 def SetStringValue(self, value: str) -> None: 389 return self._Entity.SetStringValue(value) 390 391 def SetIntValue(self, value: int) -> None: 392 return self._Entity.SetIntValue(value) 393 394 def SetFloatValue(self, value: float) -> None: 395 return self._Entity.SetFloatValue(value) 396 397 def SetBoolValue(self, value: bool) -> None: 398 return self._Entity.SetBoolValue(value) 399 400 def SetSelectionValue(self, index: int) -> None: 401 return self._Entity.SetSelectionValue(index) 402 403 404class IdEntityCol(Generic[T], ABC): 405 def __init__(self, idEntityCol: _api.IdEntityCol): 406 self._Entity = idEntityCol 407 408 @property 409 def IdEntityColList(self) -> tuple[IdEntity]: 410 if self._Entity.Count() <= 0: 411 return () 412 thisClass = type(self._Entity._items[0]).__name__ 413 givenClass = IdEntity 414 for subclass in IdEntity.__subclasses__(): 415 if subclass.__name__ == thisClass: 416 givenClass = subclass 417 return tuple([givenClass(idEntityCol) for idEntityCol in self._Entity]) 418 419 @property 420 def Ids(self) -> tuple[int]: 421 return tuple([int(int32) for int32 in self._Entity.Ids]) 422 423 def Contains(self, id: int) -> bool: 424 return self._Entity.Contains(id) 425 426 def Count(self) -> int: 427 return self._Entity.Count() 428 429 def Get(self, id: int) -> T: 430 return self._Entity.Get(id) 431 432 def __getitem__(self, index: int): 433 return self.IdEntityColList[index] 434 435 def __iter__(self): 436 yield from self.IdEntityColList 437 438 def __len__(self): 439 return len(self.IdEntityColList) 440 441 442class IdNameEntityCol(IdEntityCol, Generic[T]): 443 def __init__(self, idNameEntityCol: _api.IdNameEntityCol): 444 self._Entity = idNameEntityCol 445 self._CollectedClass = T 446 447 @property 448 def IdNameEntityColList(self) -> tuple[T]: 449 if self._Entity.Count() <= 0: 450 return () 451 thisClass = type(self._Entity._items[0]).__name__ 452 givenClass = T 453 for subclass in T.__subclasses__(): 454 if subclass.__name__ == thisClass: 455 givenClass = subclass 456 return tuple([givenClass(idNameEntityCol) for idNameEntityCol in self._Entity]) 457 458 @property 459 def Names(self) -> tuple[str]: 460 return tuple([str(string) for string in self._Entity.Names]) 461 462 @overload 463 def Get(self, name: str) -> T: ... 464 465 @overload 466 def Get(self, id: int) -> T: ... 467 468 def Get(self, item1 = None) -> T: 469 if isinstance(item1, str): 470 return self._Entity.Get(item1) 471 472 if isinstance(item1, int): 473 return super().Get(item1) 474 475 return self._Entity.Get(item1) 476 477 def __getitem__(self, index: int): 478 return self.IdNameEntityColList[index] 479 480 def __iter__(self): 481 yield from self.IdNameEntityColList 482 483 def __len__(self): 484 return len(self.IdNameEntityColList) 485 486 487class FailureObjectGroupCol(IdNameEntityCol[FailureObjectGroup]): 488 def __init__(self, failureObjectGroupCol: _api.FailureObjectGroupCol): 489 self._Entity = failureObjectGroupCol 490 self._CollectedClass = FailureObjectGroup 491 492 @property 493 def FailureObjectGroupColList(self) -> tuple[FailureObjectGroup]: 494 return tuple([FailureObjectGroup(failureObjectGroupCol) for failureObjectGroupCol in self._Entity]) 495 496 @overload 497 def Get(self, objectGroup: types.ObjectGroup) -> FailureObjectGroup: ... 498 499 @overload 500 def Get(self, name: str) -> FailureObjectGroup: ... 501 502 @overload 503 def Get(self, id: int) -> FailureObjectGroup: ... 504 505 def Get(self, item1 = None) -> FailureObjectGroup: 506 if isinstance(item1, types.ObjectGroup): 507 return FailureObjectGroup(self._Entity.Get(_types.ObjectGroup(item1.value))) 508 509 if isinstance(item1, str): 510 return FailureObjectGroup(super().Get(item1)) 511 512 if isinstance(item1, int): 513 return FailureObjectGroup(super().Get(item1)) 514 515 return self._Entity.Get(_types.ObjectGroup(item1.value)) 516 517 def __getitem__(self, index: int): 518 return self.FailureObjectGroupColList[index] 519 520 def __iter__(self): 521 yield from self.FailureObjectGroupColList 522 523 def __len__(self): 524 return len(self.FailureObjectGroupColList) 525 526 527class FailureSettingCol(IdNameEntityCol[FailureSetting]): 528 def __init__(self, failureSettingCol: _api.FailureSettingCol): 529 self._Entity = failureSettingCol 530 self._CollectedClass = FailureSetting 531 532 @property 533 def FailureSettingColList(self) -> tuple[FailureSetting]: 534 return tuple([FailureSetting(failureSettingCol) for failureSettingCol in self._Entity]) 535 536 @overload 537 def Get(self, name: str) -> FailureSetting: ... 538 539 @overload 540 def Get(self, id: int) -> FailureSetting: ... 541 542 def Get(self, item1 = None) -> FailureSetting: 543 if isinstance(item1, str): 544 return FailureSetting(super().Get(item1)) 545 546 if isinstance(item1, int): 547 return FailureSetting(super().Get(item1)) 548 549 return self._Entity.Get(item1) 550 551 def __getitem__(self, index: int): 552 return self.FailureSettingColList[index] 553 554 def __iter__(self): 555 yield from self.FailureSettingColList 556 557 def __len__(self): 558 return len(self.FailureSettingColList) 559 560 561class FailureCriterion(IdNameEntity): 562 def __init__(self, failureCriterion: _api.FailureCriterion): 563 self._Entity = failureCriterion 564 565 @property 566 def Description(self) -> str: 567 return self._Entity.Description 568 569 @property 570 def IsEnabled(self) -> bool: 571 return self._Entity.IsEnabled 572 573 @property 574 def LimitUltimate(self) -> types.LimitUltimate: 575 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()] 576 577 @property 578 def ObjectGroups(self) -> FailureObjectGroupCol: 579 result = self._Entity.ObjectGroups 580 return FailureObjectGroupCol(result) if result is not None else None 581 582 @property 583 def RequiredMargin(self) -> float: 584 return self._Entity.RequiredMargin 585 586 @property 587 def Settings(self) -> FailureSettingCol: 588 result = self._Entity.Settings 589 return FailureSettingCol(result) if result is not None else None 590 591 @IsEnabled.setter 592 def IsEnabled(self, value: bool) -> None: 593 self._Entity.IsEnabled = value 594 595 @LimitUltimate.setter 596 def LimitUltimate(self, value: types.LimitUltimate) -> None: 597 self._Entity.LimitUltimate = _types.LimitUltimate(value.value) 598 599 @RequiredMargin.setter 600 def RequiredMargin(self, value: float) -> None: 601 self._Entity.RequiredMargin = value 602 603 604class IdNameEntityRenameable(IdNameEntity): 605 def __init__(self, idNameEntityRenameable: _api.IdNameEntityRenameable): 606 self._Entity = idNameEntityRenameable 607 608 def Rename(self, name: str) -> None: 609 return self._Entity.Rename(name) 610 611 612class FailureCriterionCol(IdNameEntityCol[FailureCriterion]): 613 def __init__(self, failureCriterionCol: _api.FailureCriterionCol): 614 self._Entity = failureCriterionCol 615 self._CollectedClass = FailureCriterion 616 617 @property 618 def FailureCriterionColList(self) -> tuple[FailureCriterion]: 619 return tuple([FailureCriterion(failureCriterionCol) for failureCriterionCol in self._Entity]) 620 621 @overload 622 def Get(self, name: str) -> FailureCriterion: ... 623 624 @overload 625 def Get(self, id: int) -> FailureCriterion: ... 626 627 def Get(self, item1 = None) -> FailureCriterion: 628 if isinstance(item1, str): 629 return FailureCriterion(super().Get(item1)) 630 631 if isinstance(item1, int): 632 return FailureCriterion(super().Get(item1)) 633 634 return self._Entity.Get(item1) 635 636 def __getitem__(self, index: int): 637 return self.FailureCriterionColList[index] 638 639 def __iter__(self): 640 yield from self.FailureCriterionColList 641 642 def __len__(self): 643 return len(self.FailureCriterionColList) 644 645 646class FailureMode(IdNameEntityRenameable): 647 def __init__(self, failureMode: _api.FailureMode): 648 self._Entity = failureMode 649 650 @property 651 def AnalysisCategoryId(self) -> int: 652 return self._Entity.AnalysisCategoryId 653 654 @property 655 def AnalysisCategoryName(self) -> str: 656 return self._Entity.AnalysisCategoryName 657 658 @property 659 def Criteria(self) -> FailureCriterionCol: 660 result = self._Entity.Criteria 661 return FailureCriterionCol(result) if result is not None else None 662 663 @property 664 def Settings(self) -> FailureSettingCol: 665 result = self._Entity.Settings 666 return FailureSettingCol(result) if result is not None else None 667 668 669class FailureModeCol(IdNameEntityCol[FailureMode]): 670 def __init__(self, failureModeCol: _api.FailureModeCol): 671 self._Entity = failureModeCol 672 self._CollectedClass = FailureMode 673 674 @property 675 def FailureModeColList(self) -> tuple[FailureMode]: 676 return tuple([FailureMode(failureModeCol) for failureModeCol in self._Entity]) 677 678 @overload 679 def CreateFailureMode(self, failureModeCategoryId: int, name: str = None) -> FailureMode: ... 680 681 @overload 682 def CreateFailureMode(self, failureModeCategory: str, name: str = None) -> FailureMode: ... 683 684 @overload 685 def Get(self, name: str) -> FailureMode: ... 686 687 @overload 688 def Get(self, id: int) -> FailureMode: ... 689 690 def CreateFailureMode(self, item1 = None, item2 = None) -> FailureMode: 691 if isinstance(item1, int) and isinstance(item2, str): 692 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 693 694 if isinstance(item1, str) and isinstance(item2, str): 695 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 696 697 return self._Entity.CreateFailureMode(item1, item2) 698 699 def Get(self, item1 = None) -> FailureMode: 700 if isinstance(item1, str): 701 return FailureMode(super().Get(item1)) 702 703 if isinstance(item1, int): 704 return FailureMode(super().Get(item1)) 705 706 return self._Entity.Get(item1) 707 708 def __getitem__(self, index: int): 709 return self.FailureModeColList[index] 710 711 def __iter__(self): 712 yield from self.FailureModeColList 713 714 def __len__(self): 715 return len(self.FailureModeColList) 716 717 718class AnalysisProperty(AssignablePropertyWithFamilyCategory): 719 def __init__(self, analysisProperty: _api.AnalysisProperty): 720 self._Entity = analysisProperty 721 722 @property 723 def FailureModes(self) -> FailureModeCol: 724 result = self._Entity.FailureModes 725 return FailureModeCol(result) if result is not None else None 726 727 @overload 728 def AddFailureMode(self, id: int) -> None: ... 729 730 @overload 731 def AddFailureMode(self, ids: tuple[int]) -> None: ... 732 733 @overload 734 def RemoveFailureMode(self, id: int) -> None: ... 735 736 @overload 737 def RemoveFailureMode(self, ids: tuple[int]) -> None: ... 738 739 def AddFailureMode(self, item1 = None) -> None: 740 if isinstance(item1, int): 741 return self._Entity.AddFailureMode(item1) 742 743 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 744 idsList = MakeCSharpIntList(item1) 745 idsEnumerable = IEnumerable(idsList) 746 return self._Entity.AddFailureMode(idsEnumerable) 747 748 return self._Entity.AddFailureMode(item1) 749 750 def RemoveFailureMode(self, item1 = None) -> None: 751 if isinstance(item1, int): 752 return self._Entity.RemoveFailureMode(item1) 753 754 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 755 idsList = MakeCSharpIntList(item1) 756 idsEnumerable = IEnumerable(idsList) 757 return self._Entity.RemoveFailureMode(idsEnumerable) 758 759 return self._Entity.RemoveFailureMode(item1) 760 761 762class DesignProperty(AssignablePropertyWithFamilyCategory): 763 def __init__(self, designProperty: _api.DesignProperty): 764 self._Entity = designProperty 765 766 def Copy(self, newName: str = None) -> DesignProperty: 767 result = self._Entity.Copy(newName) 768 thisClass = type(result).__name__ 769 givenClass = DesignProperty 770 for subclass in DesignProperty.__subclasses__(): 771 if subclass.__name__ == thisClass: 772 givenClass = subclass 773 return givenClass(result) 774 775 776class LoadProperty(AssignableProperty): 777 def __init__(self, loadProperty: _api.LoadProperty): 778 self._Entity = loadProperty 779 780 @property 781 def Category(self) -> types.FamilyCategory: 782 return types.FamilyCategory[self._Entity.Category.ToString()] 783 784 @property 785 def Type(self) -> types.LoadPropertyType: 786 return types.LoadPropertyType[self._Entity.Type.ToString()] 787 788 @property 789 def IsZeroCurvature(self) -> bool: 790 return self._Entity.IsZeroCurvature 791 792 @property 793 def ModificationDate(self) -> DateTime: 794 return self._Entity.ModificationDate 795 796 797class DesignLoadSubcase(IdNameEntity): 798 def __init__(self, designLoadSubcase: _api.DesignLoadSubcase): 799 self._Entity = designLoadSubcase 800 801 @property 802 def RunDeckId(self) -> int: 803 return self._Entity.RunDeckId 804 805 @property 806 def IsThermal(self) -> bool: 807 return self._Entity.IsThermal 808 809 @property 810 def IsEditable(self) -> bool: 811 return self._Entity.IsEditable 812 813 @property 814 def Description(self) -> str: 815 return self._Entity.Description 816 817 @property 818 def ModificationDate(self) -> DateTime: 819 return self._Entity.ModificationDate 820 821 @property 822 def NastranSubcaseId(self) -> int: 823 return self._Entity.NastranSubcaseId 824 825 @property 826 def NastranLoadId(self) -> int: 827 return self._Entity.NastranLoadId 828 829 @property 830 def NastranSpcId(self) -> int: 831 return self._Entity.NastranSpcId 832 833 @property 834 def AbaqusStepName(self) -> str: 835 return self._Entity.AbaqusStepName 836 837 @property 838 def AbaqusLoadCaseName(self) -> str: 839 return self._Entity.AbaqusLoadCaseName 840 841 @property 842 def AbaqusStepTime(self) -> float: 843 return self._Entity.AbaqusStepTime 844 845 @property 846 def RunDeckOrder(self) -> int: 847 return self._Entity.RunDeckOrder 848 849 @property 850 def SolutionType(self) -> types.FeaSolutionType: 851 return types.FeaSolutionType[self._Entity.SolutionType.ToString()] 852 853 854class DesignLoadSubcaseMultiplier(IdNameEntity): 855 def __init__(self, designLoadSubcaseMultiplier: _api.DesignLoadSubcaseMultiplier): 856 self._Entity = designLoadSubcaseMultiplier 857 858 @property 859 def LimitFactor(self) -> float: 860 return self._Entity.LimitFactor 861 862 @property 863 def Subcase(self) -> DesignLoadSubcase: 864 result = self._Entity.Subcase 865 return DesignLoadSubcase(result) if result is not None else None 866 867 @property 868 def UltimateFactor(self) -> float: 869 return self._Entity.UltimateFactor 870 871 @property 872 def Value(self) -> float: 873 return self._Entity.Value 874 875 876class DesignLoadSubcaseTemperature(IdNameEntity): 877 def __init__(self, designLoadSubcaseTemperature: _api.DesignLoadSubcaseTemperature): 878 self._Entity = designLoadSubcaseTemperature 879 880 @property 881 def HasTemperatureSubcase(self) -> bool: 882 return self._Entity.HasTemperatureSubcase 883 884 @property 885 def Subcase(self) -> DesignLoadSubcase: 886 result = self._Entity.Subcase 887 return DesignLoadSubcase(result) if result is not None else None 888 889 @property 890 def TemperatureChoiceType(self) -> types.TemperatureChoiceType: 891 ''' 892 Load Case Setting selection for analysis and initial temperature. 893 ''' 894 return types.TemperatureChoiceType[self._Entity.TemperatureChoiceType.ToString()] 895 896 @property 897 def Value(self) -> float: 898 return self._Entity.Value 899 900 901class DesignLoadSubcaseMultiplierCol(IdNameEntityCol[DesignLoadSubcaseMultiplier]): 902 def __init__(self, designLoadSubcaseMultiplierCol: _api.DesignLoadSubcaseMultiplierCol): 903 self._Entity = designLoadSubcaseMultiplierCol 904 self._CollectedClass = DesignLoadSubcaseMultiplier 905 906 @property 907 def DesignLoadSubcaseMultiplierColList(self) -> tuple[DesignLoadSubcaseMultiplier]: 908 return tuple([DesignLoadSubcaseMultiplier(designLoadSubcaseMultiplierCol) for designLoadSubcaseMultiplierCol in self._Entity]) 909 910 @overload 911 def Get(self, name: str) -> DesignLoadSubcaseMultiplier: ... 912 913 @overload 914 def Get(self, id: int) -> DesignLoadSubcaseMultiplier: ... 915 916 def Get(self, item1 = None) -> DesignLoadSubcaseMultiplier: 917 if isinstance(item1, str): 918 return DesignLoadSubcaseMultiplier(super().Get(item1)) 919 920 if isinstance(item1, int): 921 return DesignLoadSubcaseMultiplier(super().Get(item1)) 922 923 return self._Entity.Get(item1) 924 925 def __getitem__(self, index: int): 926 return self.DesignLoadSubcaseMultiplierColList[index] 927 928 def __iter__(self): 929 yield from self.DesignLoadSubcaseMultiplierColList 930 931 def __len__(self): 932 return len(self.DesignLoadSubcaseMultiplierColList) 933 934 935class DesignLoad(IdNameEntity): 936 def __init__(self, designLoad: _api.DesignLoad): 937 self._Entity = designLoad 938 939 @property 940 def AnalysisTemperature(self) -> DesignLoadSubcaseTemperature: 941 result = self._Entity.AnalysisTemperature 942 return DesignLoadSubcaseTemperature(result) if result is not None else None 943 944 @property 945 def InitialTemperature(self) -> DesignLoadSubcaseTemperature: 946 result = self._Entity.InitialTemperature 947 return DesignLoadSubcaseTemperature(result) if result is not None else None 948 949 @property 950 def Description(self) -> str: 951 return self._Entity.Description 952 953 @property 954 def IsActive(self) -> bool: 955 return self._Entity.IsActive 956 957 @property 958 def IsEditable(self) -> bool: 959 return self._Entity.IsEditable 960 961 @property 962 def IsVirtual(self) -> bool: 963 return self._Entity.IsVirtual 964 965 @property 966 def ModificationDate(self) -> DateTime: 967 return self._Entity.ModificationDate 968 969 @property 970 def SubcaseMultipliers(self) -> DesignLoadSubcaseMultiplierCol: 971 result = self._Entity.SubcaseMultipliers 972 return DesignLoadSubcaseMultiplierCol(result) if result is not None else None 973 974 @property 975 def Types(self) -> list[types.LoadCaseType]: 976 return [types.LoadCaseType[loadCaseType.ToString()] for loadCaseType in self._Entity.Types] 977 978 @property 979 def UID(self) -> Guid: 980 return self._Entity.UID 981 982 983class JointDesignResult(IdEntity): 984 def __init__(self, jointDesignResult: _api.JointDesignResult): 985 self._Entity = jointDesignResult 986 987 988class ZoneDesignResult(IdEntity): 989 def __init__(self, zoneDesignResult: _api.ZoneDesignResult): 990 self._Entity = zoneDesignResult 991 992 @property 993 def VariableParameter(self) -> types.VariableParameter: 994 return types.VariableParameter[self._Entity.VariableParameter.ToString()] 995 996 @property 997 def Value(self) -> float: 998 return self._Entity.Value 999 1000 @property 1001 def MaterialId(self) -> int: 1002 return self._Entity.MaterialId 1003 1004 @property 1005 def MaterialType(self) -> types.MaterialType: 1006 return types.MaterialType[self._Entity.MaterialType.ToString()] 1007 1008 1009class Vector3d: 1010 ''' 1011 Represents a readonly 3D vector. 1012 ''' 1013 def __init__(self, vector3d: _api.Vector3d): 1014 self._Entity = vector3d 1015 1016 def Create_Vector3d(x: float, y: float, z: float): 1017 return Vector3d(_api.Vector3d(x, y, z)) 1018 1019 @property 1020 def X(self) -> float: 1021 return self._Entity.X 1022 1023 @property 1024 def Y(self) -> float: 1025 return self._Entity.Y 1026 1027 @property 1028 def Z(self) -> float: 1029 return self._Entity.Z 1030 1031 @overload 1032 def Equals(self, other) -> bool: ... 1033 1034 @overload 1035 def Equals(self, obj) -> bool: ... 1036 1037 def GetHashCode(self) -> int: 1038 return self._Entity.GetHashCode() 1039 1040 def Equals(self, item1 = None) -> bool: 1041 if isinstance(item1, Vector3d): 1042 return self._Entity.Equals(item1._Entity) 1043 1044 return self._Entity.Equals(item1._Entity) 1045 1046 def __eq__(self, other): 1047 return self.Equals(other) 1048 1049 def __ne__(self, other): 1050 return not self.Equals(other) 1051 1052 1053class DiscreteField(IdNameEntityRenameable): 1054 ''' 1055 Represents a table of discrete field data. 1056 ''' 1057 def __init__(self, discreteField: _api.DiscreteField): 1058 self._Entity = discreteField 1059 1060 @property 1061 def Columns(self) -> dict[int, str]: 1062 columnsDict = {} 1063 for kvp in self._Entity.Columns: 1064 columnsDict[int(kvp.Key)] = str(kvp.Value) 1065 1066 return columnsDict 1067 1068 @property 1069 def ColumnCount(self) -> int: 1070 return self._Entity.ColumnCount 1071 1072 @property 1073 def DataType(self) -> types.DiscreteFieldDataType: 1074 ''' 1075 Defines the type of data stored in a Discrete Field. Such as Vector, Scalar, String. 1076 ''' 1077 return types.DiscreteFieldDataType[self._Entity.DataType.ToString()] 1078 1079 @property 1080 def PhysicalEntityType(self) -> types.DiscreteFieldPhysicalEntityType: 1081 ''' 1082 Defines the type of physical entity that a Discrete Field applies to, such as zone, element, joint, etc. 1083 ''' 1084 return types.DiscreteFieldPhysicalEntityType[self._Entity.PhysicalEntityType.ToString()] 1085 1086 @property 1087 def PointIds(self) -> list[Vector3d]: 1088 return [Vector3d(vector3d) for vector3d in self._Entity.PointIds] 1089 1090 @property 1091 def RowCount(self) -> int: 1092 return self._Entity.RowCount 1093 1094 @property 1095 def RowIds(self) -> list[int]: 1096 return [int32 for int32 in self._Entity.RowIds] 1097 1098 def AddColumn(self, name: str) -> int: 1099 return self._Entity.AddColumn(name) 1100 1101 def AddPointRow(self, pointId: Vector3d) -> None: 1102 return self._Entity.AddPointRow(pointId._Entity) 1103 1104 @overload 1105 def ReadNumericCell(self, entityId: int, columnId: int) -> float: ... 1106 1107 @overload 1108 def ReadNumericCell(self, pointId: Vector3d, columnId: int) -> float: ... 1109 1110 @overload 1111 def ReadStringCell(self, entityId: int, columnId: int) -> str: ... 1112 1113 @overload 1114 def ReadStringCell(self, pointId: Vector3d, columnId: int) -> str: ... 1115 1116 def SetColumnName(self, columnId: int, name: str) -> None: 1117 return self._Entity.SetColumnName(columnId, name) 1118 1119 @overload 1120 def SetNumericValue(self, entityId: int, columnId: int, value: float) -> None: ... 1121 1122 @overload 1123 def SetNumericValue(self, pointId: Vector3d, columnId: int, value: float) -> None: ... 1124 1125 @overload 1126 def SetStringValue(self, entityId: int, columnId: int, value: str) -> None: ... 1127 1128 @overload 1129 def SetStringValue(self, pointId: Vector3d, columnId: int, value: str) -> None: ... 1130 1131 def DeleteAllRows(self) -> None: 1132 ''' 1133 Delete all rows for this discrete field. 1134 ''' 1135 return self._Entity.DeleteAllRows() 1136 1137 def DeleteColumn(self, columnId: int) -> None: 1138 return self._Entity.DeleteColumn(columnId) 1139 1140 def DeletePointRow(self, pointId: Vector3d) -> None: 1141 return self._Entity.DeletePointRow(pointId._Entity) 1142 1143 def DeleteRow(self, entityId: int) -> None: 1144 return self._Entity.DeleteRow(entityId) 1145 1146 def DeleteRowsAndColumns(self) -> None: 1147 ''' 1148 Delete all rows and columns for this discrete field. 1149 ''' 1150 return self._Entity.DeleteRowsAndColumns() 1151 1152 def ReadNumericCell(self, item1 = None, item2 = None) -> float: 1153 if isinstance(item1, int) and isinstance(item2, int): 1154 return self._Entity.ReadNumericCell(item1, item2) 1155 1156 if isinstance(item1, Vector3d) and isinstance(item2, int): 1157 return self._Entity.ReadNumericCell(item1._Entity, item2) 1158 1159 return self._Entity.ReadNumericCell(item1, item2) 1160 1161 def ReadStringCell(self, item1 = None, item2 = None) -> str: 1162 if isinstance(item1, int) and isinstance(item2, int): 1163 return self._Entity.ReadStringCell(item1, item2) 1164 1165 if isinstance(item1, Vector3d) and isinstance(item2, int): 1166 return self._Entity.ReadStringCell(item1._Entity, item2) 1167 1168 return self._Entity.ReadStringCell(item1, item2) 1169 1170 def SetNumericValue(self, item1 = None, item2 = None, item3 = None) -> None: 1171 if isinstance(item1, int) and isinstance(item2, int) and isinstance(item3, float): 1172 return self._Entity.SetNumericValue(item1, item2, item3) 1173 1174 if isinstance(item1, Vector3d) and isinstance(item2, int) and isinstance(item3, float): 1175 return self._Entity.SetNumericValue(item1._Entity, item2, item3) 1176 1177 return self._Entity.SetNumericValue(item1, item2, item3) 1178 1179 def SetStringValue(self, item1 = None, item2 = None, item3 = None) -> None: 1180 if isinstance(item1, int) and isinstance(item2, int) and isinstance(item3, str): 1181 return self._Entity.SetStringValue(item1, item2, item3) 1182 1183 if isinstance(item1, Vector3d) and isinstance(item2, int) and isinstance(item3, str): 1184 return self._Entity.SetStringValue(item1._Entity, item2, item3) 1185 1186 return self._Entity.SetStringValue(item1, item2, item3) 1187 1188 1189class Node(IdEntity): 1190 def __init__(self, node: _api.Node): 1191 self._Entity = node 1192 1193 @property 1194 def X(self) -> float: 1195 return self._Entity.X 1196 1197 @property 1198 def Y(self) -> float: 1199 return self._Entity.Y 1200 1201 @property 1202 def Z(self) -> float: 1203 return self._Entity.Z 1204 1205 1206class Centroid: 1207 def __init__(self, centroid: _api.Centroid): 1208 self._Entity = centroid 1209 1210 @property 1211 def X(self) -> float: 1212 return self._Entity.X 1213 1214 @property 1215 def Y(self) -> float: 1216 return self._Entity.Y 1217 1218 @property 1219 def Z(self) -> float: 1220 return self._Entity.Z 1221 1222 1223class Element(IdEntity): 1224 def __init__(self, element: _api.Element): 1225 self._Entity = element 1226 1227 @property 1228 def MarginOfSafety(self) -> float: 1229 return self._Entity.MarginOfSafety 1230 1231 @property 1232 def Centroid(self) -> Centroid: 1233 result = self._Entity.Centroid 1234 return Centroid(result) if result is not None else None 1235 1236 @property 1237 def Nodes(self) -> list[Node]: 1238 return [Node(node) for node in self._Entity.Nodes] 1239 1240 1241class FailureModeCategory(IdNameEntity): 1242 def __init__(self, failureModeCategory: _api.FailureModeCategory): 1243 self._Entity = failureModeCategory 1244 1245 @property 1246 def PackageId(self) -> int: 1247 return self._Entity.PackageId 1248 1249 1250class EntityWithAssignableProperties(IdNameEntityRenameable): 1251 def __init__(self, entityWithAssignableProperties: _api.EntityWithAssignableProperties): 1252 self._Entity = entityWithAssignableProperties 1253 1254 @property 1255 def AssignedAnalysisProperty(self) -> AnalysisProperty: 1256 result = self._Entity.AssignedAnalysisProperty 1257 return AnalysisProperty(result) if result is not None else None 1258 1259 @property 1260 def AssignedDesignProperty(self) -> DesignProperty: 1261 thisClass = type(self._Entity.AssignedDesignProperty).__name__ 1262 givenClass = DesignProperty 1263 for subclass in DesignProperty.__subclasses__(): 1264 if subclass.__name__ == thisClass: 1265 givenClass = subclass 1266 result = self._Entity.AssignedDesignProperty 1267 return givenClass(result) if result is not None else None 1268 1269 @property 1270 def AssignedLoadProperty(self) -> LoadProperty: 1271 thisClass = type(self._Entity.AssignedLoadProperty).__name__ 1272 givenClass = LoadProperty 1273 for subclass in LoadProperty.__subclasses__(): 1274 if subclass.__name__ == thisClass: 1275 givenClass = subclass 1276 result = self._Entity.AssignedLoadProperty 1277 return givenClass(result) if result is not None else None 1278 1279 def AssignAnalysisProperty(self, id: int) -> PropertyAssignmentStatus: 1280 return PropertyAssignmentStatus[self._Entity.AssignAnalysisProperty(id).ToString()] 1281 1282 def AssignDesignProperty(self, id: int) -> PropertyAssignmentStatus: 1283 return PropertyAssignmentStatus[self._Entity.AssignDesignProperty(id).ToString()] 1284 1285 def AssignLoadProperty(self, id: int) -> PropertyAssignmentStatus: 1286 return PropertyAssignmentStatus[self._Entity.AssignLoadProperty(id).ToString()] 1287 1288 def AssignProperty(self, property: AssignableProperty) -> PropertyAssignmentStatus: 1289 return PropertyAssignmentStatus[self._Entity.AssignProperty(property._Entity).ToString()] 1290 1291 1292class AnalysisResultCol(Generic[T]): 1293 def __init__(self, analysisResultCol: _api.AnalysisResultCol): 1294 self._Entity = analysisResultCol 1295 1296 @property 1297 def AnalysisResultColList(self) -> tuple[AnalysisResult]: 1298 if self._Entity.Count() <= 0: 1299 return () 1300 thisClass = type(self._Entity._items[0]).__name__ 1301 givenClass = AnalysisResult 1302 for subclass in AnalysisResult.__subclasses__(): 1303 if subclass.__name__ == thisClass: 1304 givenClass = subclass 1305 return tuple([givenClass(analysisResultCol) for analysisResultCol in self._Entity]) 1306 1307 def Count(self) -> int: 1308 return self._Entity.Count() 1309 1310 def __getitem__(self, index: int): 1311 return self.AnalysisResultColList[index] 1312 1313 def __iter__(self): 1314 yield from self.AnalysisResultColList 1315 1316 def __len__(self): 1317 return len(self.AnalysisResultColList) 1318 1319 1320class ZoneJointEntity(EntityWithAssignableProperties): 1321 ''' 1322 Abstract base for a Zone or Joint. 1323 ''' 1324 def __init__(self, zoneJointEntity: _api.ZoneJointEntity): 1325 self._Entity = zoneJointEntity 1326 1327 @abstractmethod 1328 def GetMinimumMargin(self) -> Margin: 1329 return Margin(self._Entity.GetMinimumMargin()) 1330 1331 @abstractmethod 1332 def GetControllingResult(self) -> AnalysisResult: 1333 result = self._Entity.GetControllingResult() 1334 thisClass = type(result).__name__ 1335 givenClass = AnalysisResult 1336 for subclass in AnalysisResult.__subclasses__(): 1337 if subclass.__name__ == thisClass: 1338 givenClass = subclass 1339 return givenClass(result) 1340 1341 @abstractmethod 1342 def GetAllResults(self) -> AnalysisResultCol: 1343 return AnalysisResultCol(self._Entity.GetAllResults()) 1344 1345 1346class JointDesignResultCol(IdEntityCol[JointDesignResult]): 1347 def __init__(self, jointDesignResultCol: _api.JointDesignResultCol): 1348 self._Entity = jointDesignResultCol 1349 self._CollectedClass = JointDesignResult 1350 1351 @property 1352 def JointDesignResultColList(self) -> tuple[JointDesignResult]: 1353 return tuple([JointDesignResult(jointDesignResultCol) for jointDesignResultCol in self._Entity]) 1354 1355 @overload 1356 def Get(self, jointSelectionId: types.JointSelectionId) -> JointDesignResult: ... 1357 1358 @overload 1359 def Get(self, jointRangeId: types.JointRangeId) -> JointDesignResult: ... 1360 1361 @overload 1362 def Get(self, id: int) -> JointDesignResult: ... 1363 1364 def Get(self, item1 = None) -> JointDesignResult: 1365 if isinstance(item1, types.JointSelectionId): 1366 result = self._Entity.Get(_types.JointSelectionId(item1.value)) 1367 thisClass = type(result).__name__ 1368 givenClass = JointDesignResult 1369 for subclass in JointDesignResult.__subclasses__(): 1370 if subclass.__name__ == thisClass: 1371 givenClass = subclass 1372 return givenClass(result) 1373 1374 if isinstance(item1, types.JointRangeId): 1375 result = self._Entity.Get(_types.JointRangeId(item1.value)) 1376 thisClass = type(result).__name__ 1377 givenClass = JointDesignResult 1378 for subclass in JointDesignResult.__subclasses__(): 1379 if subclass.__name__ == thisClass: 1380 givenClass = subclass 1381 return givenClass(result) 1382 1383 if isinstance(item1, int): 1384 return JointDesignResult(super().Get(item1)) 1385 1386 return self._Entity.Get(_types.JointSelectionId(item1.value)) 1387 1388 def __getitem__(self, index: int): 1389 return self.JointDesignResultColList[index] 1390 1391 def __iter__(self): 1392 yield from self.JointDesignResultColList 1393 1394 def __len__(self): 1395 return len(self.JointDesignResultColList) 1396 1397 1398class Joint(ZoneJointEntity): 1399 def __init__(self, joint: _api.Joint): 1400 self._Entity = joint 1401 1402 @property 1403 def JointRangeSizingResults(self) -> JointDesignResultCol: 1404 result = self._Entity.JointRangeSizingResults 1405 return JointDesignResultCol(result) if result is not None else None 1406 1407 @property 1408 def JointSelectionSizingResults(self) -> JointDesignResultCol: 1409 result = self._Entity.JointSelectionSizingResults 1410 return JointDesignResultCol(result) if result is not None else None 1411 1412 def GetAllResults(self) -> AnalysisResultCol: 1413 return AnalysisResultCol(self._Entity.GetAllResults()) 1414 1415 def GetControllingResult(self) -> AnalysisResult: 1416 result = self._Entity.GetControllingResult() 1417 thisClass = type(result).__name__ 1418 givenClass = AnalysisResult 1419 for subclass in AnalysisResult.__subclasses__(): 1420 if subclass.__name__ == thisClass: 1421 givenClass = subclass 1422 return givenClass(result) 1423 1424 def GetMinimumMargin(self) -> Margin: 1425 return Margin(self._Entity.GetMinimumMargin()) 1426 1427 1428class ZoneDesignResultCol(IdEntityCol[ZoneDesignResult]): 1429 def __init__(self, zoneDesignResultCol: _api.ZoneDesignResultCol): 1430 self._Entity = zoneDesignResultCol 1431 self._CollectedClass = ZoneDesignResult 1432 1433 @property 1434 def ZoneDesignResultColList(self) -> tuple[ZoneDesignResult]: 1435 return tuple([ZoneDesignResult(zoneDesignResultCol) for zoneDesignResultCol in self._Entity]) 1436 1437 @overload 1438 def Get(self, parameterId: types.VariableParameter) -> ZoneDesignResult: ... 1439 1440 @overload 1441 def Get(self, id: int) -> ZoneDesignResult: ... 1442 1443 def Get(self, item1 = None) -> ZoneDesignResult: 1444 if isinstance(item1, types.VariableParameter): 1445 return ZoneDesignResult(self._Entity.Get(_types.VariableParameter(item1.value))) 1446 1447 if isinstance(item1, int): 1448 return ZoneDesignResult(super().Get(item1)) 1449 1450 return self._Entity.Get(_types.VariableParameter(item1.value)) 1451 1452 def __getitem__(self, index: int): 1453 return self.ZoneDesignResultColList[index] 1454 1455 def __iter__(self): 1456 yield from self.ZoneDesignResultColList 1457 1458 def __len__(self): 1459 return len(self.ZoneDesignResultColList) 1460 1461 1462class ZoneBase(ZoneJointEntity): 1463 ''' 1464 Abstract for regular Zones and Panel Segments. 1465 ''' 1466 def __init__(self, zoneBase: _api.ZoneBase): 1467 self._Entity = zoneBase 1468 1469 @property 1470 def Centroid(self) -> Centroid: 1471 result = self._Entity.Centroid 1472 return Centroid(result) if result is not None else None 1473 1474 @property 1475 def Id(self) -> int: 1476 return self._Entity.Id 1477 1478 @property 1479 def Weight(self) -> float: 1480 return self._Entity.Weight 1481 1482 @property 1483 def NonOptimumFactor(self) -> float: 1484 return self._Entity.NonOptimumFactor 1485 1486 @property 1487 def AddedWeight(self) -> float: 1488 return self._Entity.AddedWeight 1489 1490 @property 1491 def SuperimposePanel(self) -> bool: 1492 return self._Entity.SuperimposePanel 1493 1494 @property 1495 def BucklingImperfection(self) -> float: 1496 return self._Entity.BucklingImperfection 1497 1498 @property 1499 def IsBeamColumn(self) -> bool: 1500 return self._Entity.IsBeamColumn 1501 1502 @property 1503 def SuperimposeBoundaryCondition(self) -> int: 1504 return self._Entity.SuperimposeBoundaryCondition 1505 1506 @property 1507 def IsZeroOutFeaMoments(self) -> bool: 1508 return self._Entity.IsZeroOutFeaMoments 1509 1510 @property 1511 def IsZeroOutFeaTransverseShears(self) -> bool: 1512 return self._Entity.IsZeroOutFeaTransverseShears 1513 1514 @property 1515 def MechanicalLimit(self) -> float: 1516 return self._Entity.MechanicalLimit 1517 1518 @property 1519 def MechanicalUltimate(self) -> float: 1520 return self._Entity.MechanicalUltimate 1521 1522 @property 1523 def ThermalHelp(self) -> float: 1524 return self._Entity.ThermalHelp 1525 1526 @property 1527 def ThermalHurt(self) -> float: 1528 return self._Entity.ThermalHurt 1529 1530 @property 1531 def FatigueKTSkin(self) -> float: 1532 return self._Entity.FatigueKTSkin 1533 1534 @property 1535 def FatigueKTStiff(self) -> float: 1536 return self._Entity.FatigueKTStiff 1537 1538 @property 1539 def XSpan(self) -> float: 1540 return self._Entity.XSpan 1541 1542 @property 1543 def EARequired(self) -> float: 1544 return self._Entity.EARequired 1545 1546 @property 1547 def EI1Required(self) -> float: 1548 return self._Entity.EI1Required 1549 1550 @property 1551 def EI2Required(self) -> float: 1552 return self._Entity.EI2Required 1553 1554 @property 1555 def GJRequired(self) -> float: 1556 return self._Entity.GJRequired 1557 1558 @property 1559 def EAAuto(self) -> float: 1560 return self._Entity.EAAuto 1561 1562 @property 1563 def EI1Auto(self) -> float: 1564 return self._Entity.EI1Auto 1565 1566 @property 1567 def EI2Auto(self) -> float: 1568 return self._Entity.EI2Auto 1569 1570 @property 1571 def GJAuto(self) -> float: 1572 return self._Entity.GJAuto 1573 1574 @property 1575 def Ex(self) -> float: 1576 return self._Entity.Ex 1577 1578 @property 1579 def Dmid(self) -> float: 1580 return self._Entity.Dmid 1581 1582 @NonOptimumFactor.setter 1583 def NonOptimumFactor(self, value: float) -> None: 1584 self._Entity.NonOptimumFactor = value 1585 1586 @AddedWeight.setter 1587 def AddedWeight(self, value: float) -> None: 1588 self._Entity.AddedWeight = value 1589 1590 @SuperimposePanel.setter 1591 def SuperimposePanel(self, value: bool) -> None: 1592 self._Entity.SuperimposePanel = value 1593 1594 @BucklingImperfection.setter 1595 def BucklingImperfection(self, value: float) -> None: 1596 self._Entity.BucklingImperfection = value 1597 1598 @IsBeamColumn.setter 1599 def IsBeamColumn(self, value: bool) -> None: 1600 self._Entity.IsBeamColumn = value 1601 1602 @SuperimposeBoundaryCondition.setter 1603 def SuperimposeBoundaryCondition(self, value: int) -> None: 1604 self._Entity.SuperimposeBoundaryCondition = value 1605 1606 @IsZeroOutFeaMoments.setter 1607 def IsZeroOutFeaMoments(self, value: bool) -> None: 1608 self._Entity.IsZeroOutFeaMoments = value 1609 1610 @IsZeroOutFeaTransverseShears.setter 1611 def IsZeroOutFeaTransverseShears(self, value: bool) -> None: 1612 self._Entity.IsZeroOutFeaTransverseShears = value 1613 1614 @MechanicalLimit.setter 1615 def MechanicalLimit(self, value: float) -> None: 1616 self._Entity.MechanicalLimit = value 1617 1618 @MechanicalUltimate.setter 1619 def MechanicalUltimate(self, value: float) -> None: 1620 self._Entity.MechanicalUltimate = value 1621 1622 @ThermalHelp.setter 1623 def ThermalHelp(self, value: float) -> None: 1624 self._Entity.ThermalHelp = value 1625 1626 @ThermalHurt.setter 1627 def ThermalHurt(self, value: float) -> None: 1628 self._Entity.ThermalHurt = value 1629 1630 @FatigueKTSkin.setter 1631 def FatigueKTSkin(self, value: float) -> None: 1632 self._Entity.FatigueKTSkin = value 1633 1634 @FatigueKTStiff.setter 1635 def FatigueKTStiff(self, value: float) -> None: 1636 self._Entity.FatigueKTStiff = value 1637 1638 @XSpan.setter 1639 def XSpan(self, value: float) -> None: 1640 self._Entity.XSpan = value 1641 1642 @EARequired.setter 1643 def EARequired(self, value: float) -> None: 1644 self._Entity.EARequired = value 1645 1646 @EI1Required.setter 1647 def EI1Required(self, value: float) -> None: 1648 self._Entity.EI1Required = value 1649 1650 @EI2Required.setter 1651 def EI2Required(self, value: float) -> None: 1652 self._Entity.EI2Required = value 1653 1654 @GJRequired.setter 1655 def GJRequired(self, value: float) -> None: 1656 self._Entity.GJRequired = value 1657 1658 @Ex.setter 1659 def Ex(self, value: float) -> None: 1660 self._Entity.Ex = value 1661 1662 @Dmid.setter 1663 def Dmid(self, value: float) -> None: 1664 self._Entity.Dmid = value 1665 1666 def GetObjectName(self, objectId: types.FamilyObjectUID) -> str: 1667 return self._Entity.GetObjectName(_types.FamilyObjectUID(objectId.value)) 1668 1669 def GetConceptName(self) -> str: 1670 return self._Entity.GetConceptName() 1671 1672 def GetZoneDesignResults(self, solutionId: int = 1) -> ZoneDesignResultCol: 1673 return ZoneDesignResultCol(self._Entity.GetZoneDesignResults(solutionId)) 1674 1675 def RenumberZone(self, newId: int) -> ZoneIdUpdateStatus: 1676 return ZoneIdUpdateStatus[self._Entity.RenumberZone(newId).ToString()] 1677 1678 def GetAllResults(self) -> AnalysisResultCol: 1679 return AnalysisResultCol(self._Entity.GetAllResults()) 1680 1681 def GetControllingResult(self) -> AnalysisResult: 1682 result = self._Entity.GetControllingResult() 1683 thisClass = type(result).__name__ 1684 givenClass = AnalysisResult 1685 for subclass in AnalysisResult.__subclasses__(): 1686 if subclass.__name__ == thisClass: 1687 givenClass = subclass 1688 return givenClass(result) 1689 1690 def GetMinimumMargin(self) -> Margin: 1691 return Margin(self._Entity.GetMinimumMargin()) 1692 1693 1694class ElementCol(IdEntityCol[Element]): 1695 def __init__(self, elementCol: _api.ElementCol): 1696 self._Entity = elementCol 1697 self._CollectedClass = Element 1698 1699 @property 1700 def ElementColList(self) -> tuple[Element]: 1701 return tuple([Element(elementCol) for elementCol in self._Entity]) 1702 1703 def __getitem__(self, index: int): 1704 return self.ElementColList[index] 1705 1706 def __iter__(self): 1707 yield from self.ElementColList 1708 1709 def __len__(self): 1710 return len(self.ElementColList) 1711 1712 1713class PanelSegment(ZoneBase): 1714 def __init__(self, panelSegment: _api.PanelSegment): 1715 self._Entity = panelSegment 1716 1717 @property 1718 def ElementsByObjectOrSkin(self) -> dict[types.DiscreteDefinitionType, ElementCol]: 1719 elementsByObjectOrSkinDict = {} 1720 for kvp in self._Entity.ElementsByObjectOrSkin: 1721 elementsByObjectOrSkinDict[types.DiscreteDefinitionType[kvp.Key.ToString()]] = ElementCol(kvp.Value) 1722 1723 return elementsByObjectOrSkinDict 1724 1725 @property 1726 def Skins(self) -> tuple[types.DiscreteDefinitionType]: 1727 return tuple([types.DiscreteDefinitionType(discreteDefinitionType) for discreteDefinitionType in self._Entity.Skins]) 1728 1729 @property 1730 def Objects(self) -> tuple[types.DiscreteDefinitionType]: 1731 return tuple([types.DiscreteDefinitionType(discreteDefinitionType) for discreteDefinitionType in self._Entity.Objects]) 1732 1733 @property 1734 def DiscreteTechnique(self) -> types.DiscreteTechnique: 1735 return types.DiscreteTechnique[self._Entity.DiscreteTechnique.ToString()] 1736 1737 @property 1738 def LeftSkinZoneId(self) -> int: 1739 return self._Entity.LeftSkinZoneId 1740 1741 @property 1742 def RightSkinZoneId(self) -> int: 1743 return self._Entity.RightSkinZoneId 1744 1745 def GetElements(self, discreteDefinitionType: types.DiscreteDefinitionType) -> ElementCol: 1746 return ElementCol(self._Entity.GetElements(_types.DiscreteDefinitionType(discreteDefinitionType.value))) 1747 1748 def SetObjectElements(self, discreteDefinitionType: types.DiscreteDefinitionType, elementIds: tuple[int]) -> None: 1749 elementIdsList = MakeCSharpIntList(elementIds) 1750 elementIdsEnumerable = IEnumerable(elementIdsList) 1751 return self._Entity.SetObjectElements(_types.DiscreteDefinitionType(discreteDefinitionType.value), elementIdsEnumerable) 1752 1753 1754class Zone(ZoneBase): 1755 ''' 1756 Abstract for regular Zones (not Panel Segments). 1757 ''' 1758 def __init__(self, zone: _api.Zone): 1759 self._Entity = zone 1760 1761 @property 1762 def Elements(self) -> ElementCol: 1763 result = self._Entity.Elements 1764 return ElementCol(result) if result is not None else None 1765 1766 def AddElements(self, elementIds: tuple[int]) -> None: 1767 elementIdsList = MakeCSharpIntList(elementIds) 1768 elementIdsEnumerable = IEnumerable(elementIdsList) 1769 return self._Entity.AddElements(elementIdsEnumerable) 1770 1771 1772class EntityWithAssignablePropertiesCol(IdNameEntityCol, Generic[T]): 1773 def __init__(self, entityWithAssignablePropertiesCol: _api.EntityWithAssignablePropertiesCol): 1774 self._Entity = entityWithAssignablePropertiesCol 1775 self._CollectedClass = T 1776 1777 @property 1778 def EntityWithAssignablePropertiesColList(self) -> tuple[T]: 1779 if self._Entity.Count() <= 0: 1780 return () 1781 thisClass = type(self._Entity._items[0]).__name__ 1782 givenClass = T 1783 for subclass in T.__subclasses__(): 1784 if subclass.__name__ == thisClass: 1785 givenClass = subclass 1786 return tuple([givenClass(entityWithAssignablePropertiesCol) for entityWithAssignablePropertiesCol in self._Entity]) 1787 1788 def AssignPropertyToAll(self, property: AssignableProperty) -> PropertyAssignmentStatus: 1789 return PropertyAssignmentStatus[self._Entity.AssignPropertyToAll(property._Entity).ToString()] 1790 1791 @overload 1792 def Get(self, name: str) -> T: ... 1793 1794 @overload 1795 def Get(self, id: int) -> T: ... 1796 1797 def Get(self, item1 = None) -> T: 1798 if isinstance(item1, str): 1799 return super().Get(item1) 1800 1801 if isinstance(item1, int): 1802 return super().Get(item1) 1803 1804 return self._Entity.Get(item1) 1805 1806 def __getitem__(self, index: int): 1807 return self.EntityWithAssignablePropertiesColList[index] 1808 1809 def __iter__(self): 1810 yield from self.EntityWithAssignablePropertiesColList 1811 1812 def __len__(self): 1813 return len(self.EntityWithAssignablePropertiesColList) 1814 1815 1816class JointCol(EntityWithAssignablePropertiesCol[Joint]): 1817 def __init__(self, jointCol: _api.JointCol): 1818 self._Entity = jointCol 1819 self._CollectedClass = Joint 1820 1821 @property 1822 def JointColList(self) -> tuple[Joint]: 1823 return tuple([Joint(jointCol) for jointCol in self._Entity]) 1824 1825 @overload 1826 def Get(self, name: str) -> Joint: ... 1827 1828 @overload 1829 def Get(self, id: int) -> Joint: ... 1830 1831 def Get(self, item1 = None) -> Joint: 1832 if isinstance(item1, str): 1833 return Joint(super().Get(item1)) 1834 1835 if isinstance(item1, int): 1836 return Joint(super().Get(item1)) 1837 1838 return self._Entity.Get(item1) 1839 1840 def __getitem__(self, index: int): 1841 return self.JointColList[index] 1842 1843 def __iter__(self): 1844 yield from self.JointColList 1845 1846 def __len__(self): 1847 return len(self.JointColList) 1848 1849 1850class PanelSegmentCol(EntityWithAssignablePropertiesCol[PanelSegment]): 1851 def __init__(self, panelSegmentCol: _api.PanelSegmentCol): 1852 self._Entity = panelSegmentCol 1853 self._CollectedClass = PanelSegment 1854 1855 @property 1856 def PanelSegmentColList(self) -> tuple[PanelSegment]: 1857 return tuple([PanelSegment(panelSegmentCol) for panelSegmentCol in self._Entity]) 1858 1859 @overload 1860 def Get(self, name: str) -> PanelSegment: ... 1861 1862 @overload 1863 def Get(self, id: int) -> PanelSegment: ... 1864 1865 def Get(self, item1 = None) -> PanelSegment: 1866 if isinstance(item1, str): 1867 return PanelSegment(super().Get(item1)) 1868 1869 if isinstance(item1, int): 1870 return PanelSegment(super().Get(item1)) 1871 1872 return self._Entity.Get(item1) 1873 1874 def __getitem__(self, index: int): 1875 return self.PanelSegmentColList[index] 1876 1877 def __iter__(self): 1878 yield from self.PanelSegmentColList 1879 1880 def __len__(self): 1881 return len(self.PanelSegmentColList) 1882 1883 1884class ZoneCol(EntityWithAssignablePropertiesCol[Zone]): 1885 def __init__(self, zoneCol: _api.ZoneCol): 1886 self._Entity = zoneCol 1887 self._CollectedClass = Zone 1888 1889 @property 1890 def ZoneColList(self) -> tuple[Zone]: 1891 return tuple([Zone(zoneCol) for zoneCol in self._Entity]) 1892 1893 @overload 1894 def Get(self, name: str) -> Zone: ... 1895 1896 @overload 1897 def Get(self, id: int) -> Zone: ... 1898 1899 def Get(self, item1 = None) -> Zone: 1900 if isinstance(item1, str): 1901 return Zone(super().Get(item1)) 1902 1903 if isinstance(item1, int): 1904 return Zone(super().Get(item1)) 1905 1906 return self._Entity.Get(item1) 1907 1908 def __getitem__(self, index: int): 1909 return self.ZoneColList[index] 1910 1911 def __iter__(self): 1912 yield from self.ZoneColList 1913 1914 def __len__(self): 1915 return len(self.ZoneColList) 1916 1917 1918class ZoneJointContainer(IdNameEntityRenameable): 1919 ''' 1920 Represents an entity that contains a collection of Zones and Joints. 1921 ''' 1922 def __init__(self, zoneJointContainer: _api.ZoneJointContainer): 1923 self._Entity = zoneJointContainer 1924 1925 @property 1926 def Centroid(self) -> Centroid: 1927 result = self._Entity.Centroid 1928 return Centroid(result) if result is not None else None 1929 1930 @property 1931 def Joints(self) -> JointCol: 1932 result = self._Entity.Joints 1933 return JointCol(result) if result is not None else None 1934 1935 @property 1936 def PanelSegments(self) -> PanelSegmentCol: 1937 result = self._Entity.PanelSegments 1938 return PanelSegmentCol(result) if result is not None else None 1939 1940 @property 1941 def TotalBeamLength(self) -> float: 1942 return self._Entity.TotalBeamLength 1943 1944 @property 1945 def TotalPanelArea(self) -> float: 1946 return self._Entity.TotalPanelArea 1947 1948 @property 1949 def TotalZoneWeight(self) -> float: 1950 return self._Entity.TotalZoneWeight 1951 1952 @property 1953 def Zones(self) -> ZoneCol: 1954 result = self._Entity.Zones 1955 return ZoneCol(result) if result is not None else None 1956 1957 @overload 1958 def AddJoint(self, id: int) -> CollectionModificationStatus: ... 1959 1960 @overload 1961 @abstractmethod 1962 def AddJoint(self, joint: Joint) -> CollectionModificationStatus: ... 1963 1964 @overload 1965 def RemoveJoint(self, id: int) -> CollectionModificationStatus: ... 1966 1967 @overload 1968 def RemoveJoint(self, joint: Joint) -> CollectionModificationStatus: ... 1969 1970 @overload 1971 @abstractmethod 1972 def RemoveJoints(self, jointIds: tuple[int]) -> CollectionModificationStatus: ... 1973 1974 @overload 1975 def RemoveJoints(self, joints: JointCol) -> CollectionModificationStatus: ... 1976 1977 @overload 1978 def AddZone(self, id: int) -> CollectionModificationStatus: ... 1979 1980 @overload 1981 def AddZones(self, ids: tuple[int]) -> CollectionModificationStatus: ... 1982 1983 @overload 1984 def AddZone(self, zone: Zone) -> CollectionModificationStatus: ... 1985 1986 @overload 1987 @abstractmethod 1988 def AddZones(self, zones: tuple[Zone]) -> CollectionModificationStatus: ... 1989 1990 @overload 1991 def RemoveZone(self, id: int) -> CollectionModificationStatus: ... 1992 1993 @overload 1994 def RemoveZone(self, zone: Zone) -> CollectionModificationStatus: ... 1995 1996 @overload 1997 @abstractmethod 1998 def RemoveZones(self, zoneIds: tuple[int]) -> CollectionModificationStatus: ... 1999 2000 @overload 2001 def RemoveZones(self, zones: ZoneCol) -> CollectionModificationStatus: ... 2002 2003 @overload 2004 def AddPanelSegment(self, id: int) -> CollectionModificationStatus: ... 2005 2006 @overload 2007 @abstractmethod 2008 def AddPanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 2009 2010 @overload 2011 def RemovePanelSegment(self, id: int) -> CollectionModificationStatus: ... 2012 2013 @overload 2014 def RemovePanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 2015 2016 @overload 2017 @abstractmethod 2018 def RemovePanelSegments(self, segmentIds: tuple[int]) -> CollectionModificationStatus: ... 2019 2020 @overload 2021 def RemovePanelSegments(self, segments: PanelSegmentCol) -> CollectionModificationStatus: ... 2022 2023 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 2024 if isinstance(item1, int): 2025 return CollectionModificationStatus[self._Entity.AddJoint(item1).ToString()] 2026 2027 if isinstance(item1, Joint): 2028 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 2029 2030 return self._Entity.AddJoint(item1) 2031 2032 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 2033 if isinstance(item1, int): 2034 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()] 2035 2036 if isinstance(item1, Joint): 2037 return CollectionModificationStatus[self._Entity.RemoveJoint(item1._Entity).ToString()] 2038 2039 return self._Entity.RemoveJoint(item1) 2040 2041 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 2042 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 2043 jointIdsList = MakeCSharpIntList(item1) 2044 jointIdsEnumerable = IEnumerable(jointIdsList) 2045 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 2046 2047 if isinstance(item1, JointCol): 2048 return CollectionModificationStatus[self._Entity.RemoveJoints(item1._Entity).ToString()] 2049 2050 return self._Entity.RemoveJoints(item1) 2051 2052 def AddZone(self, item1 = None) -> CollectionModificationStatus: 2053 if isinstance(item1, int): 2054 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()] 2055 2056 if isinstance(item1, Zone): 2057 return CollectionModificationStatus[self._Entity.AddZone(item1._Entity).ToString()] 2058 2059 return self._Entity.AddZone(item1) 2060 2061 def AddZones(self, item1 = None) -> CollectionModificationStatus: 2062 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 2063 idsList = MakeCSharpIntList(item1) 2064 idsEnumerable = IEnumerable(idsList) 2065 return CollectionModificationStatus[self._Entity.AddZones(idsEnumerable).ToString()] 2066 2067 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], Zone): 2068 zonesList = List[_api.Zone]() 2069 if item1 is not None: 2070 for thing in item1: 2071 if thing is not None: 2072 zonesList.Add(thing._Entity) 2073 zonesEnumerable = IEnumerable(zonesList) 2074 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 2075 2076 return self._Entity.AddZones(item1) 2077 2078 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 2079 if isinstance(item1, int): 2080 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()] 2081 2082 if isinstance(item1, Zone): 2083 return CollectionModificationStatus[self._Entity.RemoveZone(item1._Entity).ToString()] 2084 2085 return self._Entity.RemoveZone(item1) 2086 2087 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 2088 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 2089 zoneIdsList = MakeCSharpIntList(item1) 2090 zoneIdsEnumerable = IEnumerable(zoneIdsList) 2091 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 2092 2093 if isinstance(item1, ZoneCol): 2094 return CollectionModificationStatus[self._Entity.RemoveZones(item1._Entity).ToString()] 2095 2096 return self._Entity.RemoveZones(item1) 2097 2098 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 2099 if isinstance(item1, int): 2100 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1).ToString()] 2101 2102 if isinstance(item1, PanelSegment): 2103 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 2104 2105 return self._Entity.AddPanelSegment(item1) 2106 2107 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 2108 if isinstance(item1, int): 2109 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()] 2110 2111 if isinstance(item1, PanelSegment): 2112 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1._Entity).ToString()] 2113 2114 return self._Entity.RemovePanelSegment(item1) 2115 2116 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 2117 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 2118 segmentIdsList = MakeCSharpIntList(item1) 2119 segmentIdsEnumerable = IEnumerable(segmentIdsList) 2120 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 2121 2122 if isinstance(item1, PanelSegmentCol): 2123 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1._Entity).ToString()] 2124 2125 return self._Entity.RemovePanelSegments(item1) 2126 2127 2128class AutomatedConstraint(IdNameEntityRenameable): 2129 def __init__(self, automatedConstraint: _api.AutomatedConstraint): 2130 self._Entity = automatedConstraint 2131 2132 @property 2133 def ConstraintType(self) -> types.StiffnessCriteriaType: 2134 return types.StiffnessCriteriaType[self._Entity.ConstraintType.ToString()] 2135 2136 @property 2137 def Set(self) -> str: 2138 return self._Entity.Set 2139 2140 @property 2141 def DesignLoadCases(self) -> list[str]: 2142 return [string for string in self._Entity.DesignLoadCases] 2143 2144 @Set.setter 2145 def Set(self, value: str) -> None: 2146 self._Entity.Set = value 2147 2148 def AddDesignLoadCases(self, designLoadCases: list[str]) -> None: 2149 designLoadCasesList = List[str]() 2150 if designLoadCases is not None: 2151 for thing in designLoadCases: 2152 if thing is not None: 2153 designLoadCasesList.Add(thing) 2154 return self._Entity.AddDesignLoadCases(designLoadCasesList) 2155 2156 def RemoveDesignLoadCases(self, designLoadCases: list[str]) -> None: 2157 designLoadCasesList = List[str]() 2158 if designLoadCases is not None: 2159 for thing in designLoadCases: 2160 if thing is not None: 2161 designLoadCasesList.Add(thing) 2162 return self._Entity.RemoveDesignLoadCases(designLoadCasesList) 2163 2164 2165class ModalAutomatedConstraint(AutomatedConstraint): 2166 def __init__(self, modalAutomatedConstraint: _api.ModalAutomatedConstraint): 2167 self._Entity = modalAutomatedConstraint 2168 2169 @property 2170 def Eigenvalue(self) -> float: 2171 return self._Entity.Eigenvalue 2172 2173 @Eigenvalue.setter 2174 def Eigenvalue(self, value: float) -> None: 2175 self._Entity.Eigenvalue = value 2176 2177 2178class BucklingAutomatedConstraint(ModalAutomatedConstraint): 2179 def __init__(self, bucklingAutomatedConstraint: _api.BucklingAutomatedConstraint): 2180 self._Entity = bucklingAutomatedConstraint 2181 2182 2183class StaticAutomatedConstraint(AutomatedConstraint): 2184 def __init__(self, staticAutomatedConstraint: _api.StaticAutomatedConstraint): 2185 self._Entity = staticAutomatedConstraint 2186 2187 @property 2188 def VirtualDesignLoad(self) -> str: 2189 return self._Entity.VirtualDesignLoad 2190 2191 @property 2192 def GridId(self) -> int: 2193 return self._Entity.GridId 2194 2195 @property 2196 def Orientation(self) -> types.DisplacementShapeType: 2197 return types.DisplacementShapeType[self._Entity.Orientation.ToString()] 2198 2199 @property 2200 def HasVector(self) -> bool: 2201 return self._Entity.HasVector 2202 2203 @property 2204 def X(self) -> float: 2205 return self._Entity.X 2206 2207 @property 2208 def Y(self) -> float: 2209 return self._Entity.Y 2210 2211 @property 2212 def Z(self) -> float: 2213 return self._Entity.Z 2214 2215 @VirtualDesignLoad.setter 2216 def VirtualDesignLoad(self, value: str) -> None: 2217 self._Entity.VirtualDesignLoad = value 2218 2219 @GridId.setter 2220 def GridId(self, value: int) -> None: 2221 self._Entity.GridId = value 2222 2223 @Orientation.setter 2224 def Orientation(self, value: types.DisplacementShapeType) -> None: 2225 self._Entity.Orientation = _types.DisplacementShapeType(value.value) 2226 2227 @X.setter 2228 def X(self, value: float) -> None: 2229 self._Entity.X = value 2230 2231 @Y.setter 2232 def Y(self, value: float) -> None: 2233 self._Entity.Y = value 2234 2235 @Z.setter 2236 def Z(self, value: float) -> None: 2237 self._Entity.Z = value 2238 2239 2240class DisplacementAutomatedConstraint(StaticAutomatedConstraint): 2241 def __init__(self, displacementAutomatedConstraint: _api.DisplacementAutomatedConstraint): 2242 self._Entity = displacementAutomatedConstraint 2243 2244 @property 2245 def Limit(self) -> float: 2246 return self._Entity.Limit 2247 2248 @Limit.setter 2249 def Limit(self, value: float) -> None: 2250 self._Entity.Limit = value 2251 2252 2253class FrequencyAutomatedConstraint(ModalAutomatedConstraint): 2254 def __init__(self, frequencyAutomatedConstraint: _api.FrequencyAutomatedConstraint): 2255 self._Entity = frequencyAutomatedConstraint 2256 2257 2258class RotationAutomatedConstraint(StaticAutomatedConstraint): 2259 def __init__(self, rotationAutomatedConstraint: _api.RotationAutomatedConstraint): 2260 self._Entity = rotationAutomatedConstraint 2261 2262 @property 2263 def Limit(self) -> float: 2264 return self._Entity.Limit 2265 2266 @Limit.setter 2267 def Limit(self, value: float) -> None: 2268 self._Entity.Limit = value 2269 2270 2271class ManualConstraint(IdNameEntityRenameable): 2272 def __init__(self, manualConstraint: _api.ManualConstraint): 2273 self._Entity = manualConstraint 2274 2275 @property 2276 def ConstraintType(self) -> types.ConstraintType: 2277 return types.ConstraintType[self._Entity.ConstraintType.ToString()] 2278 2279 @property 2280 def Set(self) -> str: 2281 return self._Entity.Set 2282 2283 @property 2284 def Limit(self) -> float: 2285 return self._Entity.Limit 2286 2287 @property 2288 def A11(self) -> bool: 2289 return self._Entity.A11 2290 2291 @property 2292 def A22(self) -> bool: 2293 return self._Entity.A22 2294 2295 @property 2296 def A33(self) -> bool: 2297 return self._Entity.A33 2298 2299 @property 2300 def D11(self) -> bool: 2301 return self._Entity.D11 2302 2303 @property 2304 def D22(self) -> bool: 2305 return self._Entity.D22 2306 2307 @property 2308 def D33(self) -> bool: 2309 return self._Entity.D33 2310 2311 @property 2312 def EA(self) -> bool: 2313 return self._Entity.EA 2314 2315 @property 2316 def EI1(self) -> bool: 2317 return self._Entity.EI1 2318 2319 @property 2320 def EI2(self) -> bool: 2321 return self._Entity.EI2 2322 2323 @property 2324 def GJ(self) -> bool: 2325 return self._Entity.GJ 2326 2327 @property 2328 def IsActive(self) -> bool: 2329 return self._Entity.IsActive 2330 2331 @Set.setter 2332 def Set(self, value: str) -> None: 2333 self._Entity.Set = value 2334 2335 @Limit.setter 2336 def Limit(self, value: float) -> None: 2337 self._Entity.Limit = value 2338 2339 @A11.setter 2340 def A11(self, value: bool) -> None: 2341 self._Entity.A11 = value 2342 2343 @A22.setter 2344 def A22(self, value: bool) -> None: 2345 self._Entity.A22 = value 2346 2347 @A33.setter 2348 def A33(self, value: bool) -> None: 2349 self._Entity.A33 = value 2350 2351 @D11.setter 2352 def D11(self, value: bool) -> None: 2353 self._Entity.D11 = value 2354 2355 @D22.setter 2356 def D22(self, value: bool) -> None: 2357 self._Entity.D22 = value 2358 2359 @D33.setter 2360 def D33(self, value: bool) -> None: 2361 self._Entity.D33 = value 2362 2363 @EA.setter 2364 def EA(self, value: bool) -> None: 2365 self._Entity.EA = value 2366 2367 @EI1.setter 2368 def EI1(self, value: bool) -> None: 2369 self._Entity.EI1 = value 2370 2371 @EI2.setter 2372 def EI2(self, value: bool) -> None: 2373 self._Entity.EI2 = value 2374 2375 @GJ.setter 2376 def GJ(self, value: bool) -> None: 2377 self._Entity.GJ = value 2378 2379 @IsActive.setter 2380 def IsActive(self, value: bool) -> None: 2381 self._Entity.IsActive = value 2382 2383 2384class ManualConstraintWithDesignLoad(ManualConstraint): 2385 def __init__(self, manualConstraintWithDesignLoad: _api.ManualConstraintWithDesignLoad): 2386 self._Entity = manualConstraintWithDesignLoad 2387 2388 @property 2389 def UseAllDesignLoads(self) -> bool: 2390 return self._Entity.UseAllDesignLoads 2391 2392 @property 2393 def DesignLoadCase(self) -> str: 2394 return self._Entity.DesignLoadCase 2395 2396 @UseAllDesignLoads.setter 2397 def UseAllDesignLoads(self, value: bool) -> None: 2398 self._Entity.UseAllDesignLoads = value 2399 2400 @DesignLoadCase.setter 2401 def DesignLoadCase(self, value: str) -> None: 2402 self._Entity.DesignLoadCase = value 2403 2404 2405class BucklingManualConstraint(ManualConstraintWithDesignLoad): 2406 def __init__(self, bucklingManualConstraint: _api.BucklingManualConstraint): 2407 self._Entity = bucklingManualConstraint 2408 2409 2410class DisplacementManualConstraint(ManualConstraintWithDesignLoad): 2411 def __init__(self, displacementManualConstraint: _api.DisplacementManualConstraint): 2412 self._Entity = displacementManualConstraint 2413 2414 @property 2415 def DOF(self) -> types.DegreeOfFreedom: 2416 return types.DegreeOfFreedom[self._Entity.DOF.ToString()] 2417 2418 @property 2419 def Nodes(self) -> list[int]: 2420 return [int32 for int32 in self._Entity.Nodes] 2421 2422 @property 2423 def RefNodes(self) -> list[int]: 2424 return [int32 for int32 in self._Entity.RefNodes] 2425 2426 @DOF.setter 2427 def DOF(self, value: types.DegreeOfFreedom) -> None: 2428 self._Entity.DOF = _types.DegreeOfFreedom(value.value) 2429 2430 def AddNodes(self, ids: list[int]) -> None: 2431 idsList = MakeCSharpIntList(ids) 2432 return self._Entity.AddNodes(idsList) 2433 2434 def RemoveNodes(self, ids: list[int]) -> None: 2435 idsList = MakeCSharpIntList(ids) 2436 return self._Entity.RemoveNodes(idsList) 2437 2438 def AddRefNodes(self, ids: list[int]) -> None: 2439 idsList = MakeCSharpIntList(ids) 2440 return self._Entity.AddRefNodes(idsList) 2441 2442 def RemoveRefNodes(self, ids: list[int]) -> None: 2443 idsList = MakeCSharpIntList(ids) 2444 return self._Entity.RemoveRefNodes(idsList) 2445 2446 2447class FrequencyManualConstraint(ManualConstraintWithDesignLoad): 2448 def __init__(self, frequencyManualConstraint: _api.FrequencyManualConstraint): 2449 self._Entity = frequencyManualConstraint 2450 2451 2452class StaticMomentManualConstraint(ManualConstraint): 2453 def __init__(self, staticMomentManualConstraint: _api.StaticMomentManualConstraint): 2454 self._Entity = staticMomentManualConstraint 2455 2456 2457class AutomatedConstraintCol(IdNameEntityCol[AutomatedConstraint]): 2458 def __init__(self, automatedConstraintCol: _api.AutomatedConstraintCol): 2459 self._Entity = automatedConstraintCol 2460 self._CollectedClass = AutomatedConstraint 2461 2462 @property 2463 def AutomatedConstraintColList(self) -> tuple[AutomatedConstraint]: 2464 return tuple([AutomatedConstraint(automatedConstraintCol) for automatedConstraintCol in self._Entity]) 2465 2466 def AddBucklingConstraint(self, designLoads: list[str], eigenvalue: float, name: str = None) -> BucklingAutomatedConstraint: 2467 designLoadsList = List[str]() 2468 if designLoads is not None: 2469 for thing in designLoads: 2470 if thing is not None: 2471 designLoadsList.Add(thing) 2472 return BucklingAutomatedConstraint(self._Entity.AddBucklingConstraint(designLoadsList, eigenvalue, name)) 2473 2474 def AddFrequencyConstraint(self, designLoads: list[str], eigenvalue: float, name: str = None) -> FrequencyAutomatedConstraint: 2475 designLoadsList = List[str]() 2476 if designLoads is not None: 2477 for thing in designLoads: 2478 if thing is not None: 2479 designLoadsList.Add(thing) 2480 return FrequencyAutomatedConstraint(self._Entity.AddFrequencyConstraint(designLoadsList, eigenvalue, name)) 2481 2482 def AddDisplacementConstraint(self, designLoads: list[str], gridId: int, limit: float, name: str = None) -> DisplacementAutomatedConstraint: 2483 designLoadsList = List[str]() 2484 if designLoads is not None: 2485 for thing in designLoads: 2486 if thing is not None: 2487 designLoadsList.Add(thing) 2488 return DisplacementAutomatedConstraint(self._Entity.AddDisplacementConstraint(designLoadsList, gridId, limit, name)) 2489 2490 def AddRotationConstraint(self, designLoads: list[str], gridId: int, limit: float, name: str = None) -> RotationAutomatedConstraint: 2491 designLoadsList = List[str]() 2492 if designLoads is not None: 2493 for thing in designLoads: 2494 if thing is not None: 2495 designLoadsList.Add(thing) 2496 return RotationAutomatedConstraint(self._Entity.AddRotationConstraint(designLoadsList, gridId, limit, name)) 2497 2498 @overload 2499 def Delete(self, id: int) -> bool: ... 2500 2501 @overload 2502 def Delete(self, name: str) -> bool: ... 2503 2504 @overload 2505 def GetBuckling(self, id: int) -> BucklingAutomatedConstraint: ... 2506 2507 @overload 2508 def GetBuckling(self, name: str) -> BucklingAutomatedConstraint: ... 2509 2510 @overload 2511 def GetFrequency(self, id: int) -> FrequencyAutomatedConstraint: ... 2512 2513 @overload 2514 def GetFrequency(self, name: str) -> FrequencyAutomatedConstraint: ... 2515 2516 @overload 2517 def GetRotation(self, id: int) -> RotationAutomatedConstraint: ... 2518 2519 @overload 2520 def GetRotation(self, name: str) -> RotationAutomatedConstraint: ... 2521 2522 @overload 2523 def GetDisplacement(self, id: int) -> DisplacementAutomatedConstraint: ... 2524 2525 @overload 2526 def GetDisplacement(self, name: str) -> DisplacementAutomatedConstraint: ... 2527 2528 @overload 2529 def Get(self, name: str) -> AutomatedConstraint: ... 2530 2531 @overload 2532 def Get(self, id: int) -> AutomatedConstraint: ... 2533 2534 def Delete(self, item1 = None) -> bool: 2535 if isinstance(item1, int): 2536 return self._Entity.Delete(item1) 2537 2538 if isinstance(item1, str): 2539 return self._Entity.Delete(item1) 2540 2541 return self._Entity.Delete(item1) 2542 2543 def GetBuckling(self, item1 = None) -> BucklingAutomatedConstraint: 2544 if isinstance(item1, int): 2545 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2546 2547 if isinstance(item1, str): 2548 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2549 2550 return self._Entity.GetBuckling(item1) 2551 2552 def GetFrequency(self, item1 = None) -> FrequencyAutomatedConstraint: 2553 if isinstance(item1, int): 2554 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2555 2556 if isinstance(item1, str): 2557 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2558 2559 return self._Entity.GetFrequency(item1) 2560 2561 def GetRotation(self, item1 = None) -> RotationAutomatedConstraint: 2562 if isinstance(item1, int): 2563 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2564 2565 if isinstance(item1, str): 2566 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2567 2568 return self._Entity.GetRotation(item1) 2569 2570 def GetDisplacement(self, item1 = None) -> DisplacementAutomatedConstraint: 2571 if isinstance(item1, int): 2572 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2573 2574 if isinstance(item1, str): 2575 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2576 2577 return self._Entity.GetDisplacement(item1) 2578 2579 def Get(self, item1 = None) -> AutomatedConstraint: 2580 if isinstance(item1, str): 2581 return AutomatedConstraint(super().Get(item1)) 2582 2583 if isinstance(item1, int): 2584 return AutomatedConstraint(super().Get(item1)) 2585 2586 return self._Entity.Get(item1) 2587 2588 def __getitem__(self, index: int): 2589 return self.AutomatedConstraintColList[index] 2590 2591 def __iter__(self): 2592 yield from self.AutomatedConstraintColList 2593 2594 def __len__(self): 2595 return len(self.AutomatedConstraintColList) 2596 2597 2598class ManualConstraintCol(IdNameEntityCol[ManualConstraint]): 2599 def __init__(self, manualConstraintCol: _api.ManualConstraintCol): 2600 self._Entity = manualConstraintCol 2601 self._CollectedClass = ManualConstraint 2602 2603 @property 2604 def ManualConstraintColList(self) -> tuple[ManualConstraint]: 2605 return tuple([ManualConstraint(manualConstraintCol) for manualConstraintCol in self._Entity]) 2606 2607 @overload 2608 def GetFrequency(self, id: int) -> FrequencyManualConstraint: ... 2609 2610 @overload 2611 def GetFrequency(self, name: str) -> FrequencyManualConstraint: ... 2612 2613 @overload 2614 def GetBuckling(self, id: int) -> BucklingManualConstraint: ... 2615 2616 @overload 2617 def GetBuckling(self, name: str) -> BucklingManualConstraint: ... 2618 2619 @overload 2620 def GetDisplacement(self, id: int) -> DisplacementManualConstraint: ... 2621 2622 @overload 2623 def GetDisplacement(self, name: str) -> DisplacementManualConstraint: ... 2624 2625 @overload 2626 def GetStaticMoment(self, id: int) -> StaticMomentManualConstraint: ... 2627 2628 @overload 2629 def GetStaticMoment(self, name: str) -> StaticMomentManualConstraint: ... 2630 2631 def AddFrequencyConstraint(self, setName: str, limit: float, name: str = None) -> FrequencyManualConstraint: 2632 return FrequencyManualConstraint(self._Entity.AddFrequencyConstraint(setName, limit, name)) 2633 2634 def AddBucklingConstraint(self, setName: str, limit: float, name: str = None) -> BucklingManualConstraint: 2635 return BucklingManualConstraint(self._Entity.AddBucklingConstraint(setName, limit, name)) 2636 2637 def AddStaticMomentManualConstraint(self, setName: str, limit: float, name: str = None) -> StaticMomentManualConstraint: 2638 return StaticMomentManualConstraint(self._Entity.AddStaticMomentManualConstraint(setName, limit, name)) 2639 2640 def AddDisplacementConstraint(self, setName: str, gridIds: list[int], limit: float, name: str = None) -> DisplacementManualConstraint: 2641 gridIdsList = MakeCSharpIntList(gridIds) 2642 return DisplacementManualConstraint(self._Entity.AddDisplacementConstraint(setName, gridIdsList, limit, name)) 2643 2644 @overload 2645 def DeleteConstraint(self, name: str) -> bool: ... 2646 2647 @overload 2648 def DeleteConstraint(self, id: int) -> bool: ... 2649 2650 @overload 2651 def Get(self, name: str) -> ManualConstraint: ... 2652 2653 @overload 2654 def Get(self, id: int) -> ManualConstraint: ... 2655 2656 def GetFrequency(self, item1 = None) -> FrequencyManualConstraint: 2657 if isinstance(item1, int): 2658 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2659 2660 if isinstance(item1, str): 2661 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2662 2663 return self._Entity.GetFrequency(item1) 2664 2665 def GetBuckling(self, item1 = None) -> BucklingManualConstraint: 2666 if isinstance(item1, int): 2667 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2668 2669 if isinstance(item1, str): 2670 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2671 2672 return self._Entity.GetBuckling(item1) 2673 2674 def GetDisplacement(self, item1 = None) -> DisplacementManualConstraint: 2675 if isinstance(item1, int): 2676 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2677 2678 if isinstance(item1, str): 2679 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2680 2681 return self._Entity.GetDisplacement(item1) 2682 2683 def GetStaticMoment(self, item1 = None) -> StaticMomentManualConstraint: 2684 if isinstance(item1, int): 2685 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2686 2687 if isinstance(item1, str): 2688 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2689 2690 return self._Entity.GetStaticMoment(item1) 2691 2692 def DeleteConstraint(self, item1 = None) -> bool: 2693 if isinstance(item1, str): 2694 return self._Entity.DeleteConstraint(item1) 2695 2696 if isinstance(item1, int): 2697 return self._Entity.DeleteConstraint(item1) 2698 2699 return self._Entity.DeleteConstraint(item1) 2700 2701 def Get(self, item1 = None) -> ManualConstraint: 2702 if isinstance(item1, str): 2703 return ManualConstraint(super().Get(item1)) 2704 2705 if isinstance(item1, int): 2706 return ManualConstraint(super().Get(item1)) 2707 2708 return self._Entity.Get(item1) 2709 2710 def __getitem__(self, index: int): 2711 return self.ManualConstraintColList[index] 2712 2713 def __iter__(self): 2714 yield from self.ManualConstraintColList 2715 2716 def __len__(self): 2717 return len(self.ManualConstraintColList) 2718 2719 2720class HyperFea: 2721 def __init__(self, hyperFea: _api.HyperFea): 2722 self._Entity = hyperFea 2723 2724 @property 2725 def ManualConstraints(self) -> ManualConstraintCol: 2726 result = self._Entity.ManualConstraints 2727 return ManualConstraintCol(result) if result is not None else None 2728 2729 @property 2730 def AutomatedConstraints(self) -> AutomatedConstraintCol: 2731 result = self._Entity.AutomatedConstraints 2732 return AutomatedConstraintCol(result) if result is not None else None 2733 2734 def RunIterations(self, numberOfIterations: int, startWithSizing: bool, deleteElementOptimizationPlies: bool) -> None: 2735 return self._Entity.RunIterations(numberOfIterations, startWithSizing, deleteElementOptimizationPlies) 2736 2737 def SetupSolver(self, solverPath: str, arguments: str) -> types.SimpleStatus: 2738 return types.SimpleStatus(self._Entity.SetupSolver(solverPath, arguments)) 2739 2740 def TestSolver(self) -> types.SimpleStatus: 2741 ''' 2742 Test FEA solver setup. 2743 ''' 2744 return types.SimpleStatus(self._Entity.TestSolver()) 2745 2746 def GetSolverSetup(self) -> types.HyperFeaSolver: 2747 ''' 2748 Get the current FEA solver setup. 2749 ''' 2750 return types.HyperFeaSolver(self._Entity.GetSolverSetup()) 2751 2752 2753class FoamTemperature: 2754 ''' 2755 Foam material temperature dependent properties. 2756 ''' 2757 def __init__(self, foamTemperature: _api.FoamTemperature): 2758 self._Entity = foamTemperature 2759 2760 @property 2761 def Temperature(self) -> float: 2762 return self._Entity.Temperature 2763 2764 @property 2765 def Et(self) -> float: 2766 return self._Entity.Et 2767 2768 @property 2769 def Ec(self) -> float: 2770 return self._Entity.Ec 2771 2772 @property 2773 def G(self) -> float: 2774 return self._Entity.G 2775 2776 @property 2777 def Ef(self) -> float: 2778 return self._Entity.Ef 2779 2780 @property 2781 def Ftu(self) -> float: 2782 return self._Entity.Ftu 2783 2784 @property 2785 def Fcu(self) -> float: 2786 return self._Entity.Fcu 2787 2788 @property 2789 def Fsu(self) -> float: 2790 return self._Entity.Fsu 2791 2792 @property 2793 def Ffu(self) -> float: 2794 return self._Entity.Ffu 2795 2796 @property 2797 def K(self) -> float: 2798 return self._Entity.K 2799 2800 @property 2801 def C(self) -> float: 2802 return self._Entity.C 2803 2804 @Temperature.setter 2805 def Temperature(self, value: float) -> None: 2806 self._Entity.Temperature = value 2807 2808 @Et.setter 2809 def Et(self, value: float) -> None: 2810 self._Entity.Et = value 2811 2812 @Ec.setter 2813 def Ec(self, value: float) -> None: 2814 self._Entity.Ec = value 2815 2816 @G.setter 2817 def G(self, value: float) -> None: 2818 self._Entity.G = value 2819 2820 @Ef.setter 2821 def Ef(self, value: float) -> None: 2822 self._Entity.Ef = value 2823 2824 @Ftu.setter 2825 def Ftu(self, value: float) -> None: 2826 self._Entity.Ftu = value 2827 2828 @Fcu.setter 2829 def Fcu(self, value: float) -> None: 2830 self._Entity.Fcu = value 2831 2832 @Fsu.setter 2833 def Fsu(self, value: float) -> None: 2834 self._Entity.Fsu = value 2835 2836 @Ffu.setter 2837 def Ffu(self, value: float) -> None: 2838 self._Entity.Ffu = value 2839 2840 @K.setter 2841 def K(self, value: float) -> None: 2842 self._Entity.K = value 2843 2844 @C.setter 2845 def C(self, value: float) -> None: 2846 self._Entity.C = value 2847 2848 2849class Foam: 2850 ''' 2851 Foam material. 2852 ''' 2853 def __init__(self, foam: _api.Foam): 2854 self._Entity = foam 2855 2856 @property 2857 def MaterialFamilyName(self) -> str: 2858 return self._Entity.MaterialFamilyName 2859 2860 @property 2861 def Id(self) -> int: 2862 return self._Entity.Id 2863 2864 @property 2865 def CreationDate(self) -> DateTime: 2866 return self._Entity.CreationDate 2867 2868 @property 2869 def ModificationDate(self) -> DateTime: 2870 return self._Entity.ModificationDate 2871 2872 @property 2873 def Name(self) -> str: 2874 return self._Entity.Name 2875 2876 @property 2877 def Wet(self) -> bool: 2878 return self._Entity.Wet 2879 2880 @property 2881 def Density(self) -> float: 2882 return self._Entity.Density 2883 2884 @property 2885 def Form(self) -> str: 2886 return self._Entity.Form 2887 2888 @property 2889 def Specification(self) -> str: 2890 return self._Entity.Specification 2891 2892 @property 2893 def MaterialDescription(self) -> str: 2894 return self._Entity.MaterialDescription 2895 2896 @property 2897 def UserNote(self) -> str: 2898 return self._Entity.UserNote 2899 2900 @property 2901 def FemMaterialId(self) -> int: 2902 return self._Entity.FemMaterialId 2903 2904 @property 2905 def Cost(self) -> float: 2906 return self._Entity.Cost 2907 2908 @property 2909 def BucklingStiffnessKnockdown(self) -> float: 2910 return self._Entity.BucklingStiffnessKnockdown 2911 2912 @property 2913 def Absorption(self) -> float: 2914 return self._Entity.Absorption 2915 2916 @property 2917 def Manufacturer(self) -> str: 2918 return self._Entity.Manufacturer 2919 2920 @property 2921 def FoamTemperatureProperties(self) -> list[FoamTemperature]: 2922 return [FoamTemperature(foamTemperature) for foamTemperature in self._Entity.FoamTemperatureProperties] 2923 2924 @MaterialFamilyName.setter 2925 def MaterialFamilyName(self, value: str) -> None: 2926 self._Entity.MaterialFamilyName = value 2927 2928 @Name.setter 2929 def Name(self, value: str) -> None: 2930 self._Entity.Name = value 2931 2932 @Wet.setter 2933 def Wet(self, value: bool) -> None: 2934 self._Entity.Wet = value 2935 2936 @Density.setter 2937 def Density(self, value: float) -> None: 2938 self._Entity.Density = value 2939 2940 @Form.setter 2941 def Form(self, value: str) -> None: 2942 self._Entity.Form = value 2943 2944 @Specification.setter 2945 def Specification(self, value: str) -> None: 2946 self._Entity.Specification = value 2947 2948 @MaterialDescription.setter 2949 def MaterialDescription(self, value: str) -> None: 2950 self._Entity.MaterialDescription = value 2951 2952 @UserNote.setter 2953 def UserNote(self, value: str) -> None: 2954 self._Entity.UserNote = value 2955 2956 @FemMaterialId.setter 2957 def FemMaterialId(self, value: int) -> None: 2958 self._Entity.FemMaterialId = value 2959 2960 @Cost.setter 2961 def Cost(self, value: float) -> None: 2962 self._Entity.Cost = value 2963 2964 @BucklingStiffnessKnockdown.setter 2965 def BucklingStiffnessKnockdown(self, value: float) -> None: 2966 self._Entity.BucklingStiffnessKnockdown = value 2967 2968 @Absorption.setter 2969 def Absorption(self, value: float) -> None: 2970 self._Entity.Absorption = value 2971 2972 @Manufacturer.setter 2973 def Manufacturer(self, value: str) -> None: 2974 self._Entity.Manufacturer = value 2975 2976 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, g: float, ftu: float, fcu: float, fsu: float, ef: float = None, ffu: float = None, k: float = None, c: float = None) -> FoamTemperature: 2977 return FoamTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, g, ftu, fcu, fsu, ef, ffu, k, c)) 2978 2979 def DeleteTemperatureProperty(self, temperature: float) -> bool: 2980 return self._Entity.DeleteTemperatureProperty(temperature) 2981 2982 def GetTemperature(self, lookupTemperature: float) -> FoamTemperature: 2983 return FoamTemperature(self._Entity.GetTemperature(lookupTemperature)) 2984 2985 def Save(self) -> None: 2986 ''' 2987 Save any changes to this foam material to the database. 2988 ''' 2989 return self._Entity.Save() 2990 2991 2992class HoneycombTemperature: 2993 ''' 2994 Honeycomb material temperature dependent properties. 2995 ''' 2996 def __init__(self, honeycombTemperature: _api.HoneycombTemperature): 2997 self._Entity = honeycombTemperature 2998 2999 @property 3000 def Temperature(self) -> float: 3001 return self._Entity.Temperature 3002 3003 @property 3004 def Et(self) -> float: 3005 return self._Entity.Et 3006 3007 @property 3008 def Ec(self) -> float: 3009 return self._Entity.Ec 3010 3011 @property 3012 def Gw(self) -> float: 3013 return self._Entity.Gw 3014 3015 @property 3016 def Gl(self) -> float: 3017 return self._Entity.Gl 3018 3019 @property 3020 def Ftu(self) -> float: 3021 return self._Entity.Ftu 3022 3023 @property 3024 def Fcus(self) -> float: 3025 return self._Entity.Fcus 3026 3027 @property 3028 def Fcub(self) -> float: 3029 return self._Entity.Fcub 3030 3031 @property 3032 def Fcuc(self) -> float: 3033 return self._Entity.Fcuc 3034 3035 @property 3036 def Fsuw(self) -> float: 3037 return self._Entity.Fsuw 3038 3039 @property 3040 def Fsul(self) -> float: 3041 return self._Entity.Fsul 3042 3043 @property 3044 def SScfl(self) -> float: 3045 return self._Entity.SScfl 3046 3047 @property 3048 def SScfh(self) -> float: 3049 return self._Entity.SScfh 3050 3051 @property 3052 def Kl(self) -> float: 3053 return self._Entity.Kl 3054 3055 @property 3056 def Kw(self) -> float: 3057 return self._Entity.Kw 3058 3059 @property 3060 def Kt(self) -> float: 3061 return self._Entity.Kt 3062 3063 @property 3064 def C(self) -> float: 3065 return self._Entity.C 3066 3067 @Temperature.setter 3068 def Temperature(self, value: float) -> None: 3069 self._Entity.Temperature = value 3070 3071 @Et.setter 3072 def Et(self, value: float) -> None: 3073 self._Entity.Et = value 3074 3075 @Ec.setter 3076 def Ec(self, value: float) -> None: 3077 self._Entity.Ec = value 3078 3079 @Gw.setter 3080 def Gw(self, value: float) -> None: 3081 self._Entity.Gw = value 3082 3083 @Gl.setter 3084 def Gl(self, value: float) -> None: 3085 self._Entity.Gl = value 3086 3087 @Ftu.setter 3088 def Ftu(self, value: float) -> None: 3089 self._Entity.Ftu = value 3090 3091 @Fcus.setter 3092 def Fcus(self, value: float) -> None: 3093 self._Entity.Fcus = value 3094 3095 @Fcub.setter 3096 def Fcub(self, value: float) -> None: 3097 self._Entity.Fcub = value 3098 3099 @Fcuc.setter 3100 def Fcuc(self, value: float) -> None: 3101 self._Entity.Fcuc = value 3102 3103 @Fsuw.setter 3104 def Fsuw(self, value: float) -> None: 3105 self._Entity.Fsuw = value 3106 3107 @Fsul.setter 3108 def Fsul(self, value: float) -> None: 3109 self._Entity.Fsul = value 3110 3111 @SScfl.setter 3112 def SScfl(self, value: float) -> None: 3113 self._Entity.SScfl = value 3114 3115 @SScfh.setter 3116 def SScfh(self, value: float) -> None: 3117 self._Entity.SScfh = value 3118 3119 @Kl.setter 3120 def Kl(self, value: float) -> None: 3121 self._Entity.Kl = value 3122 3123 @Kw.setter 3124 def Kw(self, value: float) -> None: 3125 self._Entity.Kw = value 3126 3127 @Kt.setter 3128 def Kt(self, value: float) -> None: 3129 self._Entity.Kt = value 3130 3131 @C.setter 3132 def C(self, value: float) -> None: 3133 self._Entity.C = value 3134 3135 3136class Honeycomb: 3137 ''' 3138 Honeycomb material. 3139 ''' 3140 def __init__(self, honeycomb: _api.Honeycomb): 3141 self._Entity = honeycomb 3142 3143 @property 3144 def MaterialFamilyName(self) -> str: 3145 return self._Entity.MaterialFamilyName 3146 3147 @property 3148 def Id(self) -> int: 3149 return self._Entity.Id 3150 3151 @property 3152 def CreationDate(self) -> DateTime: 3153 return self._Entity.CreationDate 3154 3155 @property 3156 def ModificationDate(self) -> DateTime: 3157 return self._Entity.ModificationDate 3158 3159 @property 3160 def Name(self) -> str: 3161 return self._Entity.Name 3162 3163 @property 3164 def Wet(self) -> bool: 3165 return self._Entity.Wet 3166 3167 @property 3168 def Density(self) -> float: 3169 return self._Entity.Density 3170 3171 @property 3172 def Form(self) -> str: 3173 return self._Entity.Form 3174 3175 @property 3176 def Specification(self) -> str: 3177 return self._Entity.Specification 3178 3179 @property 3180 def MaterialDescription(self) -> str: 3181 return self._Entity.MaterialDescription 3182 3183 @property 3184 def UserNote(self) -> str: 3185 return self._Entity.UserNote 3186 3187 @property 3188 def FemMaterialId(self) -> int: 3189 return self._Entity.FemMaterialId 3190 3191 @property 3192 def Cost(self) -> float: 3193 return self._Entity.Cost 3194 3195 @property 3196 def CellSize(self) -> float: 3197 return self._Entity.CellSize 3198 3199 @property 3200 def Manufacturer(self) -> str: 3201 return self._Entity.Manufacturer 3202 3203 @property 3204 def HoneycombTemperatureProperties(self) -> list[HoneycombTemperature]: 3205 return [HoneycombTemperature(honeycombTemperature) for honeycombTemperature in self._Entity.HoneycombTemperatureProperties] 3206 3207 @MaterialFamilyName.setter 3208 def MaterialFamilyName(self, value: str) -> None: 3209 self._Entity.MaterialFamilyName = value 3210 3211 @Name.setter 3212 def Name(self, value: str) -> None: 3213 self._Entity.Name = value 3214 3215 @Wet.setter 3216 def Wet(self, value: bool) -> None: 3217 self._Entity.Wet = value 3218 3219 @Density.setter 3220 def Density(self, value: float) -> None: 3221 self._Entity.Density = value 3222 3223 @Form.setter 3224 def Form(self, value: str) -> None: 3225 self._Entity.Form = value 3226 3227 @Specification.setter 3228 def Specification(self, value: str) -> None: 3229 self._Entity.Specification = value 3230 3231 @MaterialDescription.setter 3232 def MaterialDescription(self, value: str) -> None: 3233 self._Entity.MaterialDescription = value 3234 3235 @UserNote.setter 3236 def UserNote(self, value: str) -> None: 3237 self._Entity.UserNote = value 3238 3239 @FemMaterialId.setter 3240 def FemMaterialId(self, value: int) -> None: 3241 self._Entity.FemMaterialId = value 3242 3243 @Cost.setter 3244 def Cost(self, value: float) -> None: 3245 self._Entity.Cost = value 3246 3247 @CellSize.setter 3248 def CellSize(self, value: float) -> None: 3249 self._Entity.CellSize = value 3250 3251 @Manufacturer.setter 3252 def Manufacturer(self, value: str) -> None: 3253 self._Entity.Manufacturer = value 3254 3255 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, gw: float, gl: float, ftu: float, fcus: float, fcub: float, fcuc: float, fsuw: float, fsul: float, sScfl: float = None, sScfh: float = None, k1: float = None, k2: float = None, k3: float = None, c: float = None) -> HoneycombTemperature: 3256 return HoneycombTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, gw, gl, ftu, fcus, fcub, fcuc, fsuw, fsul, sScfl, sScfh, k1, k2, k3, c)) 3257 3258 def DeleteTemperatureProperty(self, temperature: float) -> bool: 3259 return self._Entity.DeleteTemperatureProperty(temperature) 3260 3261 def GetTemperature(self, lookupTemperature: float) -> HoneycombTemperature: 3262 return HoneycombTemperature(self._Entity.GetTemperature(lookupTemperature)) 3263 3264 def Save(self) -> None: 3265 ''' 3266 Save any changes to this honeycomb material to the database. 3267 ''' 3268 return self._Entity.Save() 3269 3270 3271class IsotropicTemperature: 3272 ''' 3273 Isotropic material temperature dependent properties. 3274 ''' 3275 def __init__(self, isotropicTemperature: _api.IsotropicTemperature): 3276 self._Entity = isotropicTemperature 3277 3278 @property 3279 def Temperature(self) -> float: 3280 return self._Entity.Temperature 3281 3282 @property 3283 def Et(self) -> float: 3284 return self._Entity.Et 3285 3286 @property 3287 def Ec(self) -> float: 3288 return self._Entity.Ec 3289 3290 @property 3291 def G(self) -> float: 3292 return self._Entity.G 3293 3294 @property 3295 def n(self) -> float: 3296 return self._Entity.n 3297 3298 @property 3299 def F02(self) -> float: 3300 return self._Entity.F02 3301 3302 @property 3303 def FtuL(self) -> float: 3304 return self._Entity.FtuL 3305 3306 @property 3307 def FtyL(self) -> float: 3308 return self._Entity.FtyL 3309 3310 @property 3311 def FcyL(self) -> float: 3312 return self._Entity.FcyL 3313 3314 @property 3315 def FtuLT(self) -> float: 3316 return self._Entity.FtuLT 3317 3318 @property 3319 def FtyLT(self) -> float: 3320 return self._Entity.FtyLT 3321 3322 @property 3323 def FcyLT(self) -> float: 3324 return self._Entity.FcyLT 3325 3326 @property 3327 def Fsu(self) -> float: 3328 return self._Entity.Fsu 3329 3330 @property 3331 def Fbru15(self) -> float: 3332 return self._Entity.Fbru15 3333 3334 @property 3335 def Fbry15(self) -> float: 3336 return self._Entity.Fbry15 3337 3338 @property 3339 def Fbru20(self) -> float: 3340 return self._Entity.Fbru20 3341 3342 @property 3343 def Fbry20(self) -> float: 3344 return self._Entity.Fbry20 3345 3346 @property 3347 def alpha(self) -> float: 3348 return self._Entity.alpha 3349 3350 @property 3351 def K(self) -> float: 3352 return self._Entity.K 3353 3354 @property 3355 def C(self) -> float: 3356 return self._Entity.C 3357 3358 @property 3359 def etyL(self) -> float: 3360 return self._Entity.etyL 3361 3362 @property 3363 def ecyL(self) -> float: 3364 return self._Entity.ecyL 3365 3366 @property 3367 def etyLT(self) -> float: 3368 return self._Entity.etyLT 3369 3370 @property 3371 def ecyLT(self) -> float: 3372 return self._Entity.ecyLT 3373 3374 @property 3375 def esu(self) -> float: 3376 return self._Entity.esu 3377 3378 @property 3379 def Fpadh(self) -> float: 3380 return self._Entity.Fpadh 3381 3382 @property 3383 def Fsadh(self) -> float: 3384 return self._Entity.Fsadh 3385 3386 @property 3387 def esadh(self) -> float: 3388 return self._Entity.esadh 3389 3390 @property 3391 def cd(self) -> float: 3392 return self._Entity.cd 3393 3394 @property 3395 def Ffwt(self) -> float: 3396 return self._Entity.Ffwt 3397 3398 @property 3399 def Ffxz(self) -> float: 3400 return self._Entity.Ffxz 3401 3402 @property 3403 def Ffyz(self) -> float: 3404 return self._Entity.Ffyz 3405 3406 @property 3407 def FtFatigue(self) -> float: 3408 return self._Entity.FtFatigue 3409 3410 @property 3411 def FcFatigue(self) -> float: 3412 return self._Entity.FcFatigue 3413 3414 @Temperature.setter 3415 def Temperature(self, value: float) -> None: 3416 self._Entity.Temperature = value 3417 3418 @Et.setter 3419 def Et(self, value: float) -> None: 3420 self._Entity.Et = value 3421 3422 @Ec.setter 3423 def Ec(self, value: float) -> None: 3424 self._Entity.Ec = value 3425 3426 @G.setter 3427 def G(self, value: float) -> None: 3428 self._Entity.G = value 3429 3430 @n.setter 3431 def n(self, value: float) -> None: 3432 self._Entity.n = value 3433 3434 @F02.setter 3435 def F02(self, value: float) -> None: 3436 self._Entity.F02 = value 3437 3438 @FtuL.setter 3439 def FtuL(self, value: float) -> None: 3440 self._Entity.FtuL = value 3441 3442 @FtyL.setter 3443 def FtyL(self, value: float) -> None: 3444 self._Entity.FtyL = value 3445 3446 @FcyL.setter 3447 def FcyL(self, value: float) -> None: 3448 self._Entity.FcyL = value 3449 3450 @FtuLT.setter 3451 def FtuLT(self, value: float) -> None: 3452 self._Entity.FtuLT = value 3453 3454 @FtyLT.setter 3455 def FtyLT(self, value: float) -> None: 3456 self._Entity.FtyLT = value 3457 3458 @FcyLT.setter 3459 def FcyLT(self, value: float) -> None: 3460 self._Entity.FcyLT = value 3461 3462 @Fsu.setter 3463 def Fsu(self, value: float) -> None: 3464 self._Entity.Fsu = value 3465 3466 @Fbru15.setter 3467 def Fbru15(self, value: float) -> None: 3468 self._Entity.Fbru15 = value 3469 3470 @Fbry15.setter 3471 def Fbry15(self, value: float) -> None: 3472 self._Entity.Fbry15 = value 3473 3474 @Fbru20.setter 3475 def Fbru20(self, value: float) -> None: 3476 self._Entity.Fbru20 = value 3477 3478 @Fbry20.setter 3479 def Fbry20(self, value: float) -> None: 3480 self._Entity.Fbry20 = value 3481 3482 @alpha.setter 3483 def alpha(self, value: float) -> None: 3484 self._Entity.alpha = value 3485 3486 @K.setter 3487 def K(self, value: float) -> None: 3488 self._Entity.K = value 3489 3490 @C.setter 3491 def C(self, value: float) -> None: 3492 self._Entity.C = value 3493 3494 @etyL.setter 3495 def etyL(self, value: float) -> None: 3496 self._Entity.etyL = value 3497 3498 @ecyL.setter 3499 def ecyL(self, value: float) -> None: 3500 self._Entity.ecyL = value 3501 3502 @etyLT.setter 3503 def etyLT(self, value: float) -> None: 3504 self._Entity.etyLT = value 3505 3506 @ecyLT.setter 3507 def ecyLT(self, value: float) -> None: 3508 self._Entity.ecyLT = value 3509 3510 @esu.setter 3511 def esu(self, value: float) -> None: 3512 self._Entity.esu = value 3513 3514 @Fpadh.setter 3515 def Fpadh(self, value: float) -> None: 3516 self._Entity.Fpadh = value 3517 3518 @Fsadh.setter 3519 def Fsadh(self, value: float) -> None: 3520 self._Entity.Fsadh = value 3521 3522 @esadh.setter 3523 def esadh(self, value: float) -> None: 3524 self._Entity.esadh = value 3525 3526 @cd.setter 3527 def cd(self, value: float) -> None: 3528 self._Entity.cd = value 3529 3530 @Ffwt.setter 3531 def Ffwt(self, value: float) -> None: 3532 self._Entity.Ffwt = value 3533 3534 @Ffxz.setter 3535 def Ffxz(self, value: float) -> None: 3536 self._Entity.Ffxz = value 3537 3538 @Ffyz.setter 3539 def Ffyz(self, value: float) -> None: 3540 self._Entity.Ffyz = value 3541 3542 @FtFatigue.setter 3543 def FtFatigue(self, value: float) -> None: 3544 self._Entity.FtFatigue = value 3545 3546 @FcFatigue.setter 3547 def FcFatigue(self, value: float) -> None: 3548 self._Entity.FcFatigue = value 3549 3550 3551class Isotropic: 3552 ''' 3553 Isotropic material. 3554 ''' 3555 def __init__(self, isotropic: _api.Isotropic): 3556 self._Entity = isotropic 3557 3558 @property 3559 def MaterialFamilyName(self) -> str: 3560 return self._Entity.MaterialFamilyName 3561 3562 @property 3563 def Id(self) -> int: 3564 return self._Entity.Id 3565 3566 @property 3567 def CreationDate(self) -> DateTime: 3568 return self._Entity.CreationDate 3569 3570 @property 3571 def ModificationDate(self) -> DateTime: 3572 return self._Entity.ModificationDate 3573 3574 @property 3575 def Name(self) -> str: 3576 return self._Entity.Name 3577 3578 @property 3579 def Form(self) -> str: 3580 return self._Entity.Form 3581 3582 @property 3583 def Specification(self) -> str: 3584 return self._Entity.Specification 3585 3586 @property 3587 def Temper(self) -> str: 3588 return self._Entity.Temper 3589 3590 @property 3591 def Basis(self) -> str: 3592 return self._Entity.Basis 3593 3594 @property 3595 def Density(self) -> float: 3596 return self._Entity.Density 3597 3598 @property 3599 def MaterialDescription(self) -> str: 3600 return self._Entity.MaterialDescription 3601 3602 @property 3603 def UserNote(self) -> str: 3604 return self._Entity.UserNote 3605 3606 @property 3607 def FemMaterialId(self) -> int: 3608 return self._Entity.FemMaterialId 3609 3610 @property 3611 def Cost(self) -> float: 3612 return self._Entity.Cost 3613 3614 @property 3615 def BucklingStiffnessKnockdown(self) -> float: 3616 return self._Entity.BucklingStiffnessKnockdown 3617 3618 @property 3619 def IsotropicTemperatureProperties(self) -> list[IsotropicTemperature]: 3620 return [IsotropicTemperature(isotropicTemperature) for isotropicTemperature in self._Entity.IsotropicTemperatureProperties] 3621 3622 @MaterialFamilyName.setter 3623 def MaterialFamilyName(self, value: str) -> None: 3624 self._Entity.MaterialFamilyName = value 3625 3626 @Name.setter 3627 def Name(self, value: str) -> None: 3628 self._Entity.Name = value 3629 3630 @Form.setter 3631 def Form(self, value: str) -> None: 3632 self._Entity.Form = value 3633 3634 @Specification.setter 3635 def Specification(self, value: str) -> None: 3636 self._Entity.Specification = value 3637 3638 @Temper.setter 3639 def Temper(self, value: str) -> None: 3640 self._Entity.Temper = value 3641 3642 @Basis.setter 3643 def Basis(self, value: str) -> None: 3644 self._Entity.Basis = value 3645 3646 @Density.setter 3647 def Density(self, value: float) -> None: 3648 self._Entity.Density = value 3649 3650 @MaterialDescription.setter 3651 def MaterialDescription(self, value: str) -> None: 3652 self._Entity.MaterialDescription = value 3653 3654 @UserNote.setter 3655 def UserNote(self, value: str) -> None: 3656 self._Entity.UserNote = value 3657 3658 @FemMaterialId.setter 3659 def FemMaterialId(self, value: int) -> None: 3660 self._Entity.FemMaterialId = value 3661 3662 @Cost.setter 3663 def Cost(self, value: float) -> None: 3664 self._Entity.Cost = value 3665 3666 @BucklingStiffnessKnockdown.setter 3667 def BucklingStiffnessKnockdown(self, value: float) -> None: 3668 self._Entity.BucklingStiffnessKnockdown = value 3669 3670 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, g: float, ftuL: float, ftyL: float, fcyL: float, ftuLT: float, ftyLT: float, fcyLT: float, fsu: float, alpha: float, n: float = None, f02: float = None, k: float = None, c: float = None, fbru15: float = None, fbry15: float = None, fbru20: float = None, fbry20: float = None, etyL: float = None, ecyL: float = None, etyLT: float = None, ecyLT: float = None, esu: float = None, fpadh: float = None, fsadh: float = None, esadh: float = None, cd: float = None, ffwt: float = None, ffxz: float = None, ffyz: float = None, ftFatigue: float = None, fcFatigue: float = None) -> IsotropicTemperature: 3671 return IsotropicTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, g, ftuL, ftyL, fcyL, ftuLT, ftyLT, fcyLT, fsu, alpha, n, f02, k, c, fbru15, fbry15, fbru20, fbry20, etyL, ecyL, etyLT, ecyLT, esu, fpadh, fsadh, esadh, cd, ffwt, ffxz, ffyz, ftFatigue, fcFatigue)) 3672 3673 def DeleteTemperatureProperty(self, temperature: float) -> bool: 3674 return self._Entity.DeleteTemperatureProperty(temperature) 3675 3676 def GetTemperature(self, lookupTemperature: float) -> IsotropicTemperature: 3677 return IsotropicTemperature(self._Entity.GetTemperature(lookupTemperature)) 3678 3679 def Save(self) -> None: 3680 ''' 3681 Save any changes to this isotropic material to the database. 3682 ''' 3683 return self._Entity.Save() 3684 3685 3686class LaminateBase(ABC): 3687 def __init__(self, laminateBase: _api.LaminateBase): 3688 self._Entity = laminateBase 3689 3690 @property 3691 def Id(self) -> int: 3692 return self._Entity.Id 3693 3694 @property 3695 def Name(self) -> str: 3696 return self._Entity.Name 3697 3698 @property 3699 def IsEditable(self) -> bool: 3700 return self._Entity.IsEditable 3701 3702 @property 3703 def MaterialFamilyName(self) -> str: 3704 return self._Entity.MaterialFamilyName 3705 3706 @property 3707 def LayerCount(self) -> int: 3708 return self._Entity.LayerCount 3709 3710 @property 3711 def Density(self) -> float: 3712 return self._Entity.Density 3713 3714 @property 3715 def Thickness(self) -> float: 3716 return self._Entity.Thickness 3717 3718 @property 3719 def LaminateFamilyId(self) -> int: 3720 return self._Entity.LaminateFamilyId 3721 3722 @property 3723 def LaminateFamilyOrder(self) -> int: 3724 return self._Entity.LaminateFamilyOrder 3725 3726 @property 3727 def HyperLaminate(self) -> bool: 3728 return self._Entity.HyperLaminate 3729 3730 @Name.setter 3731 def Name(self, value: str) -> None: 3732 self._Entity.Name = value 3733 3734 @MaterialFamilyName.setter 3735 def MaterialFamilyName(self, value: str) -> None: 3736 self._Entity.MaterialFamilyName = value 3737 3738 @abstractmethod 3739 def Save(self) -> None: 3740 ''' 3741 Save the laminate. 3742 ''' 3743 return self._Entity.Save() 3744 3745 3746class LaminateFamily(IdNameEntity): 3747 def __init__(self, laminateFamily: _api.LaminateFamily): 3748 self._Entity = laminateFamily 3749 3750 @property 3751 def Laminates(self) -> list[LaminateBase]: 3752 return [LaminateBase(laminateBase) for laminateBase in self._Entity.Laminates] 3753 3754 @property 3755 def ModificationDate(self) -> DateTime: 3756 return self._Entity.ModificationDate 3757 3758 @property 3759 def PlankSetting(self) -> types.LaminateFamilySettingType: 3760 return types.LaminateFamilySettingType[self._Entity.PlankSetting.ToString()] 3761 3762 @property 3763 def PlankMinRatio(self) -> float: 3764 return self._Entity.PlankMinRatio 3765 3766 @property 3767 def PlankMaxRatio(self) -> float: 3768 return self._Entity.PlankMaxRatio 3769 3770 @property 3771 def FootChargeSetting(self) -> types.LaminateFamilySettingType: 3772 return types.LaminateFamilySettingType[self._Entity.FootChargeSetting.ToString()] 3773 3774 @property 3775 def FootChargeMinRatio(self) -> float: 3776 return self._Entity.FootChargeMinRatio 3777 3778 @property 3779 def FootChargeMaxRatio(self) -> float: 3780 return self._Entity.FootChargeMaxRatio 3781 3782 @property 3783 def WebChargeSetting(self) -> types.LaminateFamilySettingType: 3784 return types.LaminateFamilySettingType[self._Entity.WebChargeSetting.ToString()] 3785 3786 @property 3787 def WebChargeMinRatio(self) -> float: 3788 return self._Entity.WebChargeMinRatio 3789 3790 @property 3791 def WebChargeMaxRatio(self) -> float: 3792 return self._Entity.WebChargeMaxRatio 3793 3794 @property 3795 def CapChargeSetting(self) -> types.LaminateFamilySettingType: 3796 return types.LaminateFamilySettingType[self._Entity.CapChargeSetting.ToString()] 3797 3798 @property 3799 def CapChargeMinRatio(self) -> float: 3800 return self._Entity.CapChargeMinRatio 3801 3802 @property 3803 def CapChargeMaxRatio(self) -> float: 3804 return self._Entity.CapChargeMaxRatio 3805 3806 @property 3807 def CapCoverSetting(self) -> types.LaminateFamilySettingType: 3808 return types.LaminateFamilySettingType[self._Entity.CapCoverSetting.ToString()] 3809 3810 @property 3811 def CapCoverMinRatio(self) -> float: 3812 return self._Entity.CapCoverMinRatio 3813 3814 @property 3815 def CapCoverMaxRatio(self) -> float: 3816 return self._Entity.CapCoverMaxRatio 3817 3818 @property 3819 def DropPattern(self) -> types.PlyDropPattern: 3820 return types.PlyDropPattern[self._Entity.DropPattern.ToString()] 3821 3822 @property 3823 def LaminateStiffenerProfile(self) -> types.StiffenerProfile: 3824 return types.StiffenerProfile[self._Entity.LaminateStiffenerProfile.ToString()] 3825 3826 3827class LaminateLayerBase(ABC): 3828 def __init__(self, laminateLayerBase: _api.LaminateLayerBase): 3829 self._Entity = laminateLayerBase 3830 3831 @property 3832 def LayerId(self) -> int: 3833 return self._Entity.LayerId 3834 3835 @property 3836 def LayerMaterial(self) -> str: 3837 return self._Entity.LayerMaterial 3838 3839 @property 3840 def LayerMaterialType(self) -> types.MaterialType: 3841 ''' 3842 Represents a material's type. 3843 ''' 3844 return types.MaterialType[self._Entity.LayerMaterialType.ToString()] 3845 3846 @property 3847 def Angle(self) -> float: 3848 return self._Entity.Angle 3849 3850 @property 3851 def Thickness(self) -> float: 3852 return self._Entity.Thickness 3853 3854 @property 3855 def IsFabric(self) -> bool: 3856 return self._Entity.IsFabric 3857 3858 @Angle.setter 3859 @abstractmethod 3860 def Angle(self, value: float) -> None: 3861 self._Entity.Angle = value 3862 3863 def SetThickness(self, thickness: float) -> None: 3864 return self._Entity.SetThickness(thickness) 3865 3866 @overload 3867 def SetMaterial(self, matId: int) -> bool: ... 3868 3869 @overload 3870 def SetMaterial(self, matName: str) -> bool: ... 3871 3872 def SetMaterial(self, item1 = None) -> bool: 3873 if isinstance(item1, int): 3874 return self._Entity.SetMaterial(item1) 3875 3876 if isinstance(item1, str): 3877 return self._Entity.SetMaterial(item1) 3878 3879 return self._Entity.SetMaterial(item1) 3880 3881 3882class LaminateLayer(LaminateLayerBase): 3883 ''' 3884 Layer in a non-stiffener laminate. 3885 ''' 3886 def __init__(self, laminateLayer: _api.LaminateLayer): 3887 self._Entity = laminateLayer 3888 3889 @property 3890 def LayerId(self) -> int: 3891 return self._Entity.LayerId 3892 3893 @property 3894 def LayerMaterialType(self) -> types.MaterialType: 3895 ''' 3896 Represents a material's type. 3897 ''' 3898 return types.MaterialType[self._Entity.LayerMaterialType.ToString()] 3899 3900 @property 3901 def Angle(self) -> float: 3902 return self._Entity.Angle 3903 3904 @property 3905 def Thickness(self) -> float: 3906 return self._Entity.Thickness 3907 3908 @property 3909 def IsFabric(self) -> bool: 3910 return self._Entity.IsFabric 3911 3912 @Angle.setter 3913 def Angle(self, value: float) -> None: 3914 self._Entity.Angle = value 3915 3916 @overload 3917 def SetMaterial(self, matId: int) -> bool: ... 3918 3919 @overload 3920 def SetMaterial(self, matName: str) -> bool: ... 3921 3922 def SetMaterial(self, item1 = None) -> bool: 3923 if isinstance(item1, int): 3924 return bool(super().SetMaterial(item1)) 3925 3926 if isinstance(item1, str): 3927 return bool(super().SetMaterial(item1)) 3928 3929 return self._Entity.SetMaterial(item1) 3930 3931 3932class Laminate(LaminateBase): 3933 ''' 3934 Laminate 3935 ''' 3936 def __init__(self, laminate: _api.Laminate): 3937 self._Entity = laminate 3938 3939 @property 3940 def Layers(self) -> list[LaminateLayer]: 3941 return [LaminateLayer(laminateLayer) for laminateLayer in self._Entity.Layers] 3942 3943 def AddLayer(self, materialName: str, angle: float, thickness: float = None) -> LaminateLayer: 3944 return LaminateLayer(self._Entity.AddLayer(materialName, angle, thickness)) 3945 3946 def InsertLayer(self, layerId: int, materialName: str, angle: float, thickness: float = None) -> LaminateLayer: 3947 return LaminateLayer(self._Entity.InsertLayer(layerId, materialName, angle, thickness)) 3948 3949 def RemoveLayer(self, layerId: int) -> bool: 3950 return self._Entity.RemoveLayer(layerId) 3951 3952 def Save(self) -> None: 3953 ''' 3954 Save any changes to this laminate material to the database. 3955 ''' 3956 return self._Entity.Save() 3957 3958 3959class StiffenerLaminateLayer(LaminateLayerBase): 3960 ''' 3961 Stiffener Laminate Layer 3962 ''' 3963 def __init__(self, stiffenerLaminateLayer: _api.StiffenerLaminateLayer): 3964 self._Entity = stiffenerLaminateLayer 3965 3966 @property 3967 def LayerLocations(self) -> list[types.StiffenerLaminateLayerLocation]: 3968 return [types.StiffenerLaminateLayerLocation[stiffenerLaminateLayerLocation.ToString()] for stiffenerLaminateLayerLocation in self._Entity.LayerLocations] 3969 3970 @property 3971 def LayerId(self) -> int: 3972 return self._Entity.LayerId 3973 3974 @property 3975 def LayerMaterialType(self) -> types.MaterialType: 3976 ''' 3977 Represents a material's type. 3978 ''' 3979 return types.MaterialType[self._Entity.LayerMaterialType.ToString()] 3980 3981 @property 3982 def Angle(self) -> float: 3983 return self._Entity.Angle 3984 3985 @property 3986 def Thickness(self) -> float: 3987 return self._Entity.Thickness 3988 3989 @property 3990 def IsFabric(self) -> bool: 3991 return self._Entity.IsFabric 3992 3993 @Angle.setter 3994 def Angle(self, value: float) -> None: 3995 self._Entity.Angle = value 3996 3997 def AddLayerLocation(self, location: types.StiffenerLaminateLayerLocation) -> None: 3998 return self._Entity.AddLayerLocation(_types.StiffenerLaminateLayerLocation(location.value)) 3999 4000 def RemoveLayerLocation(self, location: types.StiffenerLaminateLayerLocation) -> bool: 4001 return self._Entity.RemoveLayerLocation(_types.StiffenerLaminateLayerLocation(location.value)) 4002 4003 @overload 4004 def SetMaterial(self, matId: int) -> bool: ... 4005 4006 @overload 4007 def SetMaterial(self, matName: str) -> bool: ... 4008 4009 def SetMaterial(self, item1 = None) -> bool: 4010 if isinstance(item1, int): 4011 return bool(super().SetMaterial(item1)) 4012 4013 if isinstance(item1, str): 4014 return bool(super().SetMaterial(item1)) 4015 4016 return self._Entity.SetMaterial(item1) 4017 4018 4019class StiffenerLaminate(LaminateBase): 4020 ''' 4021 Stiffener Laminate 4022 ''' 4023 def __init__(self, stiffenerLaminate: _api.StiffenerLaminate): 4024 self._Entity = stiffenerLaminate 4025 4026 @property 4027 def Layers(self) -> list[StiffenerLaminateLayer]: 4028 return [StiffenerLaminateLayer(stiffenerLaminateLayer) for stiffenerLaminateLayer in self._Entity.Layers] 4029 4030 @property 4031 def LaminateStiffenerProfile(self) -> types.StiffenerProfile: 4032 return types.StiffenerProfile[self._Entity.LaminateStiffenerProfile.ToString()] 4033 4034 @overload 4035 def AddLayer(self, location: types.StiffenerLaminateLayerLocation, materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4036 4037 @overload 4038 def InsertLayer(self, location: types.StiffenerLaminateLayerLocation, layerId: int, materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4039 4040 @overload 4041 def AddLayer(self, locations: tuple[types.StiffenerLaminateLayerLocation], materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4042 4043 @overload 4044 def InsertLayer(self, locations: tuple[types.StiffenerLaminateLayerLocation], layerId: int, materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4045 4046 def RemoveLayer(self, layerId: int) -> bool: 4047 return self._Entity.RemoveLayer(layerId) 4048 4049 def Save(self) -> None: 4050 ''' 4051 Save laminate to database. 4052 ''' 4053 return self._Entity.Save() 4054 4055 def AddLayer(self, item1 = None, item2 = None, item3 = None, item4 = None) -> StiffenerLaminateLayer: 4056 if isinstance(item1, types.StiffenerLaminateLayerLocation) and isinstance(item2, str) and isinstance(item3, float) and isinstance(item4, float): 4057 return StiffenerLaminateLayer(self._Entity.AddLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4)) 4058 4059 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], types.StiffenerLaminateLayerLocation) and isinstance(item2, str) and isinstance(item3, float) and isinstance(item4, float): 4060 locationsList = List[_types.StiffenerLaminateLayerLocation]() 4061 if item1 is not None: 4062 for thing in item1: 4063 if thing is not None: 4064 locationsList.Add(_types.StiffenerLaminateLayerLocation(thing.value)) 4065 locationsEnumerable = IEnumerable(locationsList) 4066 return StiffenerLaminateLayer(self._Entity.AddLayer(locationsEnumerable, item2, item3, item4)) 4067 4068 return self._Entity.AddLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4) 4069 4070 def InsertLayer(self, item1 = None, item2 = None, item3 = None, item4 = None, item5 = None) -> StiffenerLaminateLayer: 4071 if isinstance(item1, types.StiffenerLaminateLayerLocation) and isinstance(item2, int) and isinstance(item3, str) and isinstance(item4, float) and isinstance(item5, float): 4072 return StiffenerLaminateLayer(self._Entity.InsertLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4, item5)) 4073 4074 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], types.StiffenerLaminateLayerLocation) and isinstance(item2, int) and isinstance(item3, str) and isinstance(item4, float) and isinstance(item5, float): 4075 locationsList = List[_types.StiffenerLaminateLayerLocation]() 4076 if item1 is not None: 4077 for thing in item1: 4078 if thing is not None: 4079 locationsList.Add(_types.StiffenerLaminateLayerLocation(thing.value)) 4080 locationsEnumerable = IEnumerable(locationsList) 4081 return StiffenerLaminateLayer(self._Entity.InsertLayer(locationsEnumerable, item2, item3, item4, item5)) 4082 4083 return self._Entity.InsertLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4, item5) 4084 4085 4086class OrthotropicCorrectionFactorBase(ABC): 4087 ''' 4088 Orthotropic material correction factor. 4089 ''' 4090 def __init__(self, orthotropicCorrectionFactorBase: _api.OrthotropicCorrectionFactorBase): 4091 self._Entity = orthotropicCorrectionFactorBase 4092 4093 @property 4094 def CorrectionId(self) -> types.CorrectionId: 4095 ''' 4096 Correction ID for a correction factor. (Columns in HyperX) 4097 ''' 4098 return types.CorrectionId[self._Entity.CorrectionId.ToString()] 4099 4100 @property 4101 def PropertyId(self) -> types.CorrectionProperty: 4102 ''' 4103 Property name for a correction factor. (Rows in HyperX) 4104 ''' 4105 return types.CorrectionProperty[self._Entity.PropertyId.ToString()] 4106 4107 4108class OrthotropicCorrectionFactorPoint: 4109 ''' 4110 Pointer to an Equation-based or Tabular Correction Factor. 4111 ''' 4112 def __init__(self, orthotropicCorrectionFactorPoint: _api.OrthotropicCorrectionFactorPoint): 4113 self._Entity = orthotropicCorrectionFactorPoint 4114 4115 def Create_OrthotropicCorrectionFactorPoint(property: types.CorrectionProperty, id: types.CorrectionId): 4116 return OrthotropicCorrectionFactorPoint(_api.OrthotropicCorrectionFactorPoint(_types.CorrectionProperty(property.value), _types.CorrectionId(id.value))) 4117 4118 @property 4119 def CorrectionProperty(self) -> types.CorrectionProperty: 4120 ''' 4121 Property name for a correction factor. (Rows in HyperX) 4122 ''' 4123 return types.CorrectionProperty[self._Entity.CorrectionProperty.ToString()] 4124 4125 @property 4126 def CorrectionId(self) -> types.CorrectionId: 4127 ''' 4128 Correction ID for a correction factor. (Columns in HyperX) 4129 ''' 4130 return types.CorrectionId[self._Entity.CorrectionId.ToString()] 4131 4132 @overload 4133 def Equals(self, other) -> bool: ... 4134 4135 @overload 4136 def Equals(self, obj) -> bool: ... 4137 4138 def GetHashCode(self) -> int: 4139 return self._Entity.GetHashCode() 4140 4141 def Equals(self, item1 = None) -> bool: 4142 if isinstance(item1, OrthotropicCorrectionFactorPoint): 4143 return self._Entity.Equals(item1._Entity) 4144 4145 return self._Entity.Equals(item1._Entity) 4146 4147 4148class OrthotropicCorrectionFactorValue: 4149 ''' 4150 Orthotropic material equation-based correction factor value. (NOT TABULAR) 4151 ''' 4152 def __init__(self, orthotropicCorrectionFactorValue: _api.OrthotropicCorrectionFactorValue): 4153 self._Entity = orthotropicCorrectionFactorValue 4154 4155 @property 4156 def Property(self) -> types.CorrectionProperty: 4157 ''' 4158 Property name for a correction factor. (Rows in HyperX) 4159 ''' 4160 return types.CorrectionProperty[self._Entity.Property.ToString()] 4161 4162 @property 4163 def Correction(self) -> types.CorrectionId: 4164 ''' 4165 Correction ID for a correction factor. (Columns in HyperX) 4166 ''' 4167 return types.CorrectionId[self._Entity.Correction.ToString()] 4168 4169 @property 4170 def Equation(self) -> types.CorrectionEquation: 4171 ''' 4172 Equation for a correction factor. 4173 ''' 4174 return types.CorrectionEquation[self._Entity.Equation.ToString()] 4175 4176 @property 4177 def EquationParameter(self) -> types.EquationParameterId: 4178 ''' 4179 Correction factor parameter names. 4180 ''' 4181 return types.EquationParameterId[self._Entity.EquationParameter.ToString()] 4182 4183 @property 4184 def Value(self) -> float: 4185 return self._Entity.Value 4186 4187 @Value.setter 4188 def Value(self, value: float) -> None: 4189 self._Entity.Value = value 4190 4191 4192class OrthotropicEquationCorrectionFactor(OrthotropicCorrectionFactorBase): 4193 ''' 4194 Represents an equation-based orthotropic material correction factor. 4195 ''' 4196 def __init__(self, orthotropicEquationCorrectionFactor: _api.OrthotropicEquationCorrectionFactor): 4197 self._Entity = orthotropicEquationCorrectionFactor 4198 4199 @property 4200 def Equation(self) -> types.CorrectionEquation: 4201 ''' 4202 Equation for a correction factor. 4203 ''' 4204 return types.CorrectionEquation[self._Entity.Equation.ToString()] 4205 4206 @property 4207 def OrthotropicCorrectionValues(self) -> dict[types.EquationParameterId, OrthotropicCorrectionFactorValue]: 4208 orthotropicCorrectionValuesDict = {} 4209 for kvp in self._Entity.OrthotropicCorrectionValues: 4210 orthotropicCorrectionValuesDict[types.EquationParameterId[kvp.Key.ToString()]] = OrthotropicCorrectionFactorValue(kvp.Value) 4211 4212 return orthotropicCorrectionValuesDict 4213 4214 def AddCorrectionFactorValue(self, equationParameterName: types.EquationParameterId, valueToAdd: float) -> OrthotropicCorrectionFactorValue: 4215 return OrthotropicCorrectionFactorValue(self._Entity.AddCorrectionFactorValue(_types.EquationParameterId(equationParameterName.value), valueToAdd)) 4216 4217 4218class TabularCorrectionFactorIndependentValue: 4219 ''' 4220 Contains an independent value for a tabular correction factor row. 4221 ''' 4222 def __init__(self, tabularCorrectionFactorIndependentValue: _api.TabularCorrectionFactorIndependentValue): 4223 self._Entity = tabularCorrectionFactorIndependentValue 4224 4225 @property 4226 def BoolValue(self) -> bool: 4227 return self._Entity.BoolValue 4228 4229 @property 4230 def DoubleValue(self) -> float: 4231 return self._Entity.DoubleValue 4232 4233 @property 4234 def IntValue(self) -> int: 4235 return self._Entity.IntValue 4236 4237 @property 4238 def ValueType(self) -> types.CorrectionValueType: 4239 ''' 4240 Defines the type of the independent values on a tabular correction factor row. 4241 ''' 4242 return types.CorrectionValueType[self._Entity.ValueType.ToString()] 4243 4244 4245class TabularCorrectionFactorRow: 4246 ''' 4247 Row data for a tabular correction factor. 4248 ''' 4249 def __init__(self, tabularCorrectionFactorRow: _api.TabularCorrectionFactorRow): 4250 self._Entity = tabularCorrectionFactorRow 4251 4252 @property 4253 def DependentValue(self) -> float: 4254 return self._Entity.DependentValue 4255 4256 @property 4257 def IndependentValues(self) -> dict[types.CorrectionIndependentDefinition, TabularCorrectionFactorIndependentValue]: 4258 independentValuesDict = {} 4259 for kvp in self._Entity.IndependentValues: 4260 independentValuesDict[types.CorrectionIndependentDefinition[kvp.Key.ToString()]] = TabularCorrectionFactorIndependentValue(kvp.Value) 4261 4262 return independentValuesDict 4263 4264 4265class OrthotropicTabularCorrectionFactor(OrthotropicCorrectionFactorBase): 4266 ''' 4267 Tabular correction factor. 4268 ''' 4269 def __init__(self, orthotropicTabularCorrectionFactor: _api.OrthotropicTabularCorrectionFactor): 4270 self._Entity = orthotropicTabularCorrectionFactor 4271 4272 @property 4273 def CorrectionFactorRows(self) -> dict[int, TabularCorrectionFactorRow]: 4274 correctionFactorRowsDict = {} 4275 for kvp in self._Entity.CorrectionFactorRows: 4276 correctionFactorRowsDict[int(kvp.Key)] = TabularCorrectionFactorRow(kvp.Value) 4277 4278 return correctionFactorRowsDict 4279 4280 @property 4281 def CorrectionIndependentDefinitions(self) -> set[types.CorrectionIndependentDefinition]: 4282 return {types.CorrectionIndependentDefinition(correctionIndependentDefinition) for correctionIndependentDefinition in self._Entity.CorrectionIndependentDefinitions} 4283 4284 @overload 4285 def SetIndependentValue(self, correctionPointId: int, cid: types.CorrectionIndependentDefinition, value: float) -> None: ... 4286 4287 @overload 4288 def SetIndependentValue(self, correctionPointId: int, cid: types.CorrectionIndependentDefinition, value: bool) -> None: ... 4289 4290 @overload 4291 def SetIndependentValue(self, correctionPointId: int, cid: types.CorrectionIndependentDefinition, value: int) -> None: ... 4292 4293 def SetKValue(self, correctionPointId: int, value: float) -> None: 4294 return self._Entity.SetKValue(correctionPointId, value) 4295 4296 def SetIndependentValue(self, item1 = None, item2 = None, item3 = None) -> None: 4297 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, float): 4298 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4299 4300 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, bool): 4301 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4302 4303 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, int): 4304 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4305 4306 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4307 4308 4309class OrthotropicAllowableCurvePoint: 4310 ''' 4311 Represents a point on a laminate allowable curve. 4312 ''' 4313 def __init__(self, orthotropicAllowableCurvePoint: _api.OrthotropicAllowableCurvePoint): 4314 self._Entity = orthotropicAllowableCurvePoint 4315 4316 @property 4317 def Property_ID(self) -> types.AllowablePropertyName: 4318 ''' 4319 Property name for a laminate allowable. 4320 ''' 4321 return types.AllowablePropertyName[self._Entity.Property_ID.ToString()] 4322 4323 @property 4324 def Temperature(self) -> float: 4325 return self._Entity.Temperature 4326 4327 @property 4328 def X(self) -> float: 4329 return self._Entity.X 4330 4331 @property 4332 def Y(self) -> float: 4333 return self._Entity.Y 4334 4335 @Property_ID.setter 4336 def Property_ID(self, value: types.AllowablePropertyName) -> None: 4337 self._Entity.Property_ID = _types.AllowablePropertyName(value.value) 4338 4339 @Temperature.setter 4340 def Temperature(self, value: float) -> None: 4341 self._Entity.Temperature = value 4342 4343 @X.setter 4344 def X(self, value: float) -> None: 4345 self._Entity.X = value 4346 4347 @Y.setter 4348 def Y(self, value: float) -> None: 4349 self._Entity.Y = value 4350 4351 4352class OrthotropicEffectiveLaminate: 4353 ''' 4354 Orthotropic material effective laminate properties. Read-only from the API. 4355 Check if material is an effective laminate with orthotropic.IsEffectiveLaminate. 4356 ''' 4357 def __init__(self, orthotropicEffectiveLaminate: _api.OrthotropicEffectiveLaminate): 4358 self._Entity = orthotropicEffectiveLaminate 4359 4360 @property 4361 def Percent_tape_0(self) -> float: 4362 return self._Entity.Percent_tape_0 4363 4364 @property 4365 def Percent_tape_90(self) -> float: 4366 return self._Entity.Percent_tape_90 4367 4368 @property 4369 def Percent_tape_45(self) -> float: 4370 return self._Entity.Percent_tape_45 4371 4372 @property 4373 def Percent_fabric_0(self) -> float: 4374 return self._Entity.Percent_fabric_0 4375 4376 @property 4377 def Percent_fabric_90(self) -> float: 4378 return self._Entity.Percent_fabric_90 4379 4380 @property 4381 def Percent_fabric_45(self) -> float: 4382 return self._Entity.Percent_fabric_45 4383 4384 @property 4385 def Tape_Orthotropic(self) -> str: 4386 return self._Entity.Tape_Orthotropic 4387 4388 @property 4389 def Fabric_Orthotropic(self) -> str: 4390 return self._Entity.Fabric_Orthotropic 4391 4392 @property 4393 def Valid(self) -> bool: 4394 return self._Entity.Valid 4395 4396 @property 4397 def Use_tape_allowables(self) -> bool: 4398 return self._Entity.Use_tape_allowables 4399 4400 4401class OrthotropicLaminateAllowable: 4402 ''' 4403 Orthotropic material laminate allowable properties. 4404 ''' 4405 def __init__(self, orthotropicLaminateAllowable: _api.OrthotropicLaminateAllowable): 4406 self._Entity = orthotropicLaminateAllowable 4407 4408 @property 4409 def Property_ID(self) -> types.AllowablePropertyName: 4410 ''' 4411 Property name for a laminate allowable. 4412 ''' 4413 return types.AllowablePropertyName[self._Entity.Property_ID.ToString()] 4414 4415 @property 4416 def Method_ID(self) -> types.AllowableMethodName: 4417 ''' 4418 Method name for a laminate allowable. 4419 ''' 4420 return types.AllowableMethodName[self._Entity.Method_ID.ToString()] 4421 4422 @Property_ID.setter 4423 def Property_ID(self, value: types.AllowablePropertyName) -> None: 4424 self._Entity.Property_ID = _types.AllowablePropertyName(value.value) 4425 4426 @Method_ID.setter 4427 def Method_ID(self, value: types.AllowableMethodName) -> None: 4428 self._Entity.Method_ID = _types.AllowableMethodName(value.value) 4429 4430 4431class OrthotropicTemperature: 4432 ''' 4433 Orthotropic material temperature dependent properties. 4434 ''' 4435 def __init__(self, orthotropicTemperature: _api.OrthotropicTemperature): 4436 self._Entity = orthotropicTemperature 4437 4438 @property 4439 def Temperature(self) -> float: 4440 return self._Entity.Temperature 4441 4442 @property 4443 def Et1(self) -> float: 4444 return self._Entity.Et1 4445 4446 @property 4447 def Et2(self) -> float: 4448 return self._Entity.Et2 4449 4450 @property 4451 def vt12(self) -> float: 4452 return self._Entity.vt12 4453 4454 @property 4455 def Ec1(self) -> float: 4456 return self._Entity.Ec1 4457 4458 @property 4459 def Ec2(self) -> float: 4460 return self._Entity.Ec2 4461 4462 @property 4463 def vc12(self) -> float: 4464 return self._Entity.vc12 4465 4466 @property 4467 def G12(self) -> float: 4468 return self._Entity.G12 4469 4470 @property 4471 def G13(self) -> float: 4472 return self._Entity.G13 4473 4474 @property 4475 def G23(self) -> float: 4476 return self._Entity.G23 4477 4478 @property 4479 def Ftu1(self) -> float: 4480 return self._Entity.Ftu1 4481 4482 @property 4483 def Ftu2(self) -> float: 4484 return self._Entity.Ftu2 4485 4486 @property 4487 def Fcu1(self) -> float: 4488 return self._Entity.Fcu1 4489 4490 @property 4491 def Fcu2(self) -> float: 4492 return self._Entity.Fcu2 4493 4494 @property 4495 def Fsu12(self) -> float: 4496 return self._Entity.Fsu12 4497 4498 @property 4499 def Fsu13(self) -> float: 4500 return self._Entity.Fsu13 4501 4502 @property 4503 def Fsu23(self) -> float: 4504 return self._Entity.Fsu23 4505 4506 @property 4507 def GIc(self) -> float: 4508 return self._Entity.GIc 4509 4510 @property 4511 def alpha1(self) -> float: 4512 return self._Entity.alpha1 4513 4514 @property 4515 def alpha2(self) -> float: 4516 return self._Entity.alpha2 4517 4518 @property 4519 def K1(self) -> float: 4520 return self._Entity.K1 4521 4522 @property 4523 def K2(self) -> float: 4524 return self._Entity.K2 4525 4526 @property 4527 def C(self) -> float: 4528 return self._Entity.C 4529 4530 @property 4531 def etu1(self) -> float: 4532 return self._Entity.etu1 4533 4534 @property 4535 def etu2(self) -> float: 4536 return self._Entity.etu2 4537 4538 @property 4539 def ecu1(self) -> float: 4540 return self._Entity.ecu1 4541 4542 @property 4543 def ecu2(self) -> float: 4544 return self._Entity.ecu2 4545 4546 @property 4547 def ecuoh(self) -> float: 4548 return self._Entity.ecuoh 4549 4550 @property 4551 def ecuai(self) -> float: 4552 return self._Entity.ecuai 4553 4554 @property 4555 def esu12(self) -> float: 4556 return self._Entity.esu12 4557 4558 @property 4559 def Ftu3(self) -> float: 4560 return self._Entity.Ftu3 4561 4562 @property 4563 def GIIc(self) -> float: 4564 return self._Entity.GIIc 4565 4566 @property 4567 def d0Tension(self) -> float: 4568 return self._Entity.d0Tension 4569 4570 @property 4571 def cd(self) -> float: 4572 return self._Entity.cd 4573 4574 @property 4575 def d0Compression(self) -> float: 4576 return self._Entity.d0Compression 4577 4578 @property 4579 def TLt(self) -> float: 4580 return self._Entity.TLt 4581 4582 @property 4583 def TLc(self) -> float: 4584 return self._Entity.TLc 4585 4586 @property 4587 def TTt(self) -> float: 4588 return self._Entity.TTt 4589 4590 @property 4591 def TTc(self) -> float: 4592 return self._Entity.TTc 4593 4594 @property 4595 def OrthotropicAllowableCurvePoints(self) -> list[OrthotropicAllowableCurvePoint]: 4596 return [OrthotropicAllowableCurvePoint(orthotropicAllowableCurvePoint) for orthotropicAllowableCurvePoint in self._Entity.OrthotropicAllowableCurvePoints] 4597 4598 @Temperature.setter 4599 def Temperature(self, value: float) -> None: 4600 self._Entity.Temperature = value 4601 4602 @Et1.setter 4603 def Et1(self, value: float) -> None: 4604 self._Entity.Et1 = value 4605 4606 @Et2.setter 4607 def Et2(self, value: float) -> None: 4608 self._Entity.Et2 = value 4609 4610 @vt12.setter 4611 def vt12(self, value: float) -> None: 4612 self._Entity.vt12 = value 4613 4614 @Ec1.setter 4615 def Ec1(self, value: float) -> None: 4616 self._Entity.Ec1 = value 4617 4618 @Ec2.setter 4619 def Ec2(self, value: float) -> None: 4620 self._Entity.Ec2 = value 4621 4622 @vc12.setter 4623 def vc12(self, value: float) -> None: 4624 self._Entity.vc12 = value 4625 4626 @G12.setter 4627 def G12(self, value: float) -> None: 4628 self._Entity.G12 = value 4629 4630 @G13.setter 4631 def G13(self, value: float) -> None: 4632 self._Entity.G13 = value 4633 4634 @G23.setter 4635 def G23(self, value: float) -> None: 4636 self._Entity.G23 = value 4637 4638 @Ftu1.setter 4639 def Ftu1(self, value: float) -> None: 4640 self._Entity.Ftu1 = value 4641 4642 @Ftu2.setter 4643 def Ftu2(self, value: float) -> None: 4644 self._Entity.Ftu2 = value 4645 4646 @Fcu1.setter 4647 def Fcu1(self, value: float) -> None: 4648 self._Entity.Fcu1 = value 4649 4650 @Fcu2.setter 4651 def Fcu2(self, value: float) -> None: 4652 self._Entity.Fcu2 = value 4653 4654 @Fsu12.setter 4655 def Fsu12(self, value: float) -> None: 4656 self._Entity.Fsu12 = value 4657 4658 @Fsu13.setter 4659 def Fsu13(self, value: float) -> None: 4660 self._Entity.Fsu13 = value 4661 4662 @Fsu23.setter 4663 def Fsu23(self, value: float) -> None: 4664 self._Entity.Fsu23 = value 4665 4666 @GIc.setter 4667 def GIc(self, value: float) -> None: 4668 self._Entity.GIc = value 4669 4670 @alpha1.setter 4671 def alpha1(self, value: float) -> None: 4672 self._Entity.alpha1 = value 4673 4674 @alpha2.setter 4675 def alpha2(self, value: float) -> None: 4676 self._Entity.alpha2 = value 4677 4678 @K1.setter 4679 def K1(self, value: float) -> None: 4680 self._Entity.K1 = value 4681 4682 @K2.setter 4683 def K2(self, value: float) -> None: 4684 self._Entity.K2 = value 4685 4686 @C.setter 4687 def C(self, value: float) -> None: 4688 self._Entity.C = value 4689 4690 @etu1.setter 4691 def etu1(self, value: float) -> None: 4692 self._Entity.etu1 = value 4693 4694 @etu2.setter 4695 def etu2(self, value: float) -> None: 4696 self._Entity.etu2 = value 4697 4698 @ecu1.setter 4699 def ecu1(self, value: float) -> None: 4700 self._Entity.ecu1 = value 4701 4702 @ecu2.setter 4703 def ecu2(self, value: float) -> None: 4704 self._Entity.ecu2 = value 4705 4706 @ecuoh.setter 4707 def ecuoh(self, value: float) -> None: 4708 self._Entity.ecuoh = value 4709 4710 @ecuai.setter 4711 def ecuai(self, value: float) -> None: 4712 self._Entity.ecuai = value 4713 4714 @esu12.setter 4715 def esu12(self, value: float) -> None: 4716 self._Entity.esu12 = value 4717 4718 @Ftu3.setter 4719 def Ftu3(self, value: float) -> None: 4720 self._Entity.Ftu3 = value 4721 4722 @GIIc.setter 4723 def GIIc(self, value: float) -> None: 4724 self._Entity.GIIc = value 4725 4726 @d0Tension.setter 4727 def d0Tension(self, value: float) -> None: 4728 self._Entity.d0Tension = value 4729 4730 @cd.setter 4731 def cd(self, value: float) -> None: 4732 self._Entity.cd = value 4733 4734 @d0Compression.setter 4735 def d0Compression(self, value: float) -> None: 4736 self._Entity.d0Compression = value 4737 4738 @TLt.setter 4739 def TLt(self, value: float) -> None: 4740 self._Entity.TLt = value 4741 4742 @TLc.setter 4743 def TLc(self, value: float) -> None: 4744 self._Entity.TLc = value 4745 4746 @TTt.setter 4747 def TTt(self, value: float) -> None: 4748 self._Entity.TTt = value 4749 4750 @TTc.setter 4751 def TTc(self, value: float) -> None: 4752 self._Entity.TTc = value 4753 4754 def AddCurvePoint(self, property: types.AllowablePropertyName, x: float, y: float) -> OrthotropicAllowableCurvePoint: 4755 return OrthotropicAllowableCurvePoint(self._Entity.AddCurvePoint(_types.AllowablePropertyName(property.value), x, y)) 4756 4757 def DeleteCurvePoint(self, property: types.AllowablePropertyName, x: float) -> bool: 4758 return self._Entity.DeleteCurvePoint(_types.AllowablePropertyName(property.value), x) 4759 4760 def GetCurvePoint(self, property: types.AllowablePropertyName, x: float) -> OrthotropicAllowableCurvePoint: 4761 return OrthotropicAllowableCurvePoint(self._Entity.GetCurvePoint(_types.AllowablePropertyName(property.value), x)) 4762 4763 4764class Orthotropic: 4765 ''' 4766 Orthotropic material. 4767 ''' 4768 def __init__(self, orthotropic: _api.Orthotropic): 4769 self._Entity = orthotropic 4770 4771 @property 4772 def MaterialFamilyName(self) -> str: 4773 return self._Entity.MaterialFamilyName 4774 4775 @property 4776 def Id(self) -> int: 4777 return self._Entity.Id 4778 4779 @property 4780 def CreationDate(self) -> DateTime: 4781 return self._Entity.CreationDate 4782 4783 @property 4784 def ModificationDate(self) -> DateTime: 4785 return self._Entity.ModificationDate 4786 4787 @property 4788 def Name(self) -> str: 4789 return self._Entity.Name 4790 4791 @property 4792 def Form(self) -> str: 4793 return self._Entity.Form 4794 4795 @property 4796 def Specification(self) -> str: 4797 return self._Entity.Specification 4798 4799 @property 4800 def Basis(self) -> str: 4801 return self._Entity.Basis 4802 4803 @property 4804 def Wet(self) -> bool: 4805 return self._Entity.Wet 4806 4807 @property 4808 def Thickness(self) -> float: 4809 return self._Entity.Thickness 4810 4811 @property 4812 def Density(self) -> float: 4813 return self._Entity.Density 4814 4815 @property 4816 def FiberVolume(self) -> float: 4817 return self._Entity.FiberVolume 4818 4819 @property 4820 def GlassTransition(self) -> float: 4821 return self._Entity.GlassTransition 4822 4823 @property 4824 def Manufacturer(self) -> str: 4825 return self._Entity.Manufacturer 4826 4827 @property 4828 def Processes(self) -> str: 4829 return self._Entity.Processes 4830 4831 @property 4832 def MaterialDescription(self) -> str: 4833 return self._Entity.MaterialDescription 4834 4835 @property 4836 def UserNote(self) -> str: 4837 return self._Entity.UserNote 4838 4839 @property 4840 def BendingCorrectionFactor(self) -> float: 4841 return self._Entity.BendingCorrectionFactor 4842 4843 @property 4844 def FemMaterialId(self) -> int: 4845 return self._Entity.FemMaterialId 4846 4847 @property 4848 def Cost(self) -> float: 4849 return self._Entity.Cost 4850 4851 @property 4852 def BucklingStiffnessKnockdown(self) -> float: 4853 return self._Entity.BucklingStiffnessKnockdown 4854 4855 @property 4856 def OrthotropicTemperatureProperties(self) -> list[OrthotropicTemperature]: 4857 return [OrthotropicTemperature(orthotropicTemperature) for orthotropicTemperature in self._Entity.OrthotropicTemperatureProperties] 4858 4859 @property 4860 def OrthotropicLaminateAllowables(self) -> list[OrthotropicLaminateAllowable]: 4861 return [OrthotropicLaminateAllowable(orthotropicLaminateAllowable) for orthotropicLaminateAllowable in self._Entity.OrthotropicLaminateAllowables] 4862 4863 @property 4864 def OrthotropicEffectiveLaminate(self) -> OrthotropicEffectiveLaminate: 4865 ''' 4866 Orthotropic material effective laminate properties. Read-only from the API. 4867 Check if material is an effective laminate with orthotropic.IsEffectiveLaminate. 4868 ''' 4869 result = self._Entity.OrthotropicEffectiveLaminate 4870 return OrthotropicEffectiveLaminate(result) if result is not None else None 4871 4872 @property 4873 def OrthotropicEquationCorrectionFactors(self) -> dict[OrthotropicCorrectionFactorPoint, OrthotropicEquationCorrectionFactor]: 4874 orthotropicEquationCorrectionFactorsDict = {} 4875 for kvp in self._Entity.OrthotropicEquationCorrectionFactors: 4876 orthotropicEquationCorrectionFactorsDict[OrthotropicCorrectionFactorPoint(kvp.Key)] = OrthotropicEquationCorrectionFactor(kvp.Value) 4877 4878 return orthotropicEquationCorrectionFactorsDict 4879 4880 @property 4881 def OrthotropicTabularCorrectionFactors(self) -> dict[OrthotropicCorrectionFactorPoint, OrthotropicTabularCorrectionFactor]: 4882 orthotropicTabularCorrectionFactorsDict = {} 4883 for kvp in self._Entity.OrthotropicTabularCorrectionFactors: 4884 orthotropicTabularCorrectionFactorsDict[OrthotropicCorrectionFactorPoint(kvp.Key)] = OrthotropicTabularCorrectionFactor(kvp.Value) 4885 4886 return orthotropicTabularCorrectionFactorsDict 4887 4888 @MaterialFamilyName.setter 4889 def MaterialFamilyName(self, value: str) -> None: 4890 self._Entity.MaterialFamilyName = value 4891 4892 @Name.setter 4893 def Name(self, value: str) -> None: 4894 self._Entity.Name = value 4895 4896 @Form.setter 4897 def Form(self, value: str) -> None: 4898 self._Entity.Form = value 4899 4900 @Specification.setter 4901 def Specification(self, value: str) -> None: 4902 self._Entity.Specification = value 4903 4904 @Basis.setter 4905 def Basis(self, value: str) -> None: 4906 self._Entity.Basis = value 4907 4908 @Wet.setter 4909 def Wet(self, value: bool) -> None: 4910 self._Entity.Wet = value 4911 4912 @Thickness.setter 4913 def Thickness(self, value: float) -> None: 4914 self._Entity.Thickness = value 4915 4916 @Density.setter 4917 def Density(self, value: float) -> None: 4918 self._Entity.Density = value 4919 4920 @FiberVolume.setter 4921 def FiberVolume(self, value: float) -> None: 4922 self._Entity.FiberVolume = value 4923 4924 @GlassTransition.setter 4925 def GlassTransition(self, value: float) -> None: 4926 self._Entity.GlassTransition = value 4927 4928 @Manufacturer.setter 4929 def Manufacturer(self, value: str) -> None: 4930 self._Entity.Manufacturer = value 4931 4932 @Processes.setter 4933 def Processes(self, value: str) -> None: 4934 self._Entity.Processes = value 4935 4936 @MaterialDescription.setter 4937 def MaterialDescription(self, value: str) -> None: 4938 self._Entity.MaterialDescription = value 4939 4940 @UserNote.setter 4941 def UserNote(self, value: str) -> None: 4942 self._Entity.UserNote = value 4943 4944 @BendingCorrectionFactor.setter 4945 def BendingCorrectionFactor(self, value: float) -> None: 4946 self._Entity.BendingCorrectionFactor = value 4947 4948 @FemMaterialId.setter 4949 def FemMaterialId(self, value: int) -> None: 4950 self._Entity.FemMaterialId = value 4951 4952 @Cost.setter 4953 def Cost(self, value: float) -> None: 4954 self._Entity.Cost = value 4955 4956 @BucklingStiffnessKnockdown.setter 4957 def BucklingStiffnessKnockdown(self, value: float) -> None: 4958 self._Entity.BucklingStiffnessKnockdown = value 4959 4960 def AddTemperatureProperty(self, temperature: float, et1: float, et2: float, vt12: float, ec1: float, ec2: float, vc12: float, g12: float, ftu1: float, ftu2: float, fcu1: float, fcu2: float, fsu12: float, alpha1: float, alpha2: float, etu1: float, etu2: float, ecu1: float, ecu2: float, esu12: float) -> OrthotropicTemperature: 4961 return OrthotropicTemperature(self._Entity.AddTemperatureProperty(temperature, et1, et2, vt12, ec1, ec2, vc12, g12, ftu1, ftu2, fcu1, fcu2, fsu12, alpha1, alpha2, etu1, etu2, ecu1, ecu2, esu12)) 4962 4963 def DeleteTemperatureProperty(self, temperature: float) -> bool: 4964 return self._Entity.DeleteTemperatureProperty(temperature) 4965 4966 def GetTemperature(self, lookupTemperature: float) -> OrthotropicTemperature: 4967 return OrthotropicTemperature(self._Entity.GetTemperature(lookupTemperature)) 4968 4969 def IsEffectiveLaminate(self) -> bool: 4970 ''' 4971 Returns true if this material is an effective laminate. 4972 ''' 4973 return self._Entity.IsEffectiveLaminate() 4974 4975 def HasLaminateAllowable(self, property: types.AllowablePropertyName) -> bool: 4976 return self._Entity.HasLaminateAllowable(_types.AllowablePropertyName(property.value)) 4977 4978 def AddLaminateAllowable(self, property: types.AllowablePropertyName, method: types.AllowableMethodName) -> OrthotropicLaminateAllowable: 4979 return OrthotropicLaminateAllowable(self._Entity.AddLaminateAllowable(_types.AllowablePropertyName(property.value), _types.AllowableMethodName(method.value))) 4980 4981 def GetLaminateAllowable(self, lookupAllowableProperty: types.AllowablePropertyName) -> OrthotropicLaminateAllowable: 4982 return OrthotropicLaminateAllowable(self._Entity.GetLaminateAllowable(_types.AllowablePropertyName(lookupAllowableProperty.value))) 4983 4984 def AddEquationCorrectionFactor(self, propertyId: types.CorrectionProperty, correctionId: types.CorrectionId, equationId: types.CorrectionEquation) -> OrthotropicEquationCorrectionFactor: 4985 return OrthotropicEquationCorrectionFactor(self._Entity.AddEquationCorrectionFactor(_types.CorrectionProperty(propertyId.value), _types.CorrectionId(correctionId.value), _types.CorrectionEquation(equationId.value))) 4986 4987 def GetEquationCorrectionFactor(self, property: types.CorrectionProperty, correction: types.CorrectionId) -> OrthotropicEquationCorrectionFactor: 4988 return OrthotropicEquationCorrectionFactor(self._Entity.GetEquationCorrectionFactor(_types.CorrectionProperty(property.value), _types.CorrectionId(correction.value))) 4989 4990 def GetTabularCorrectionFactor(self, property: types.CorrectionProperty, correction: types.CorrectionId) -> OrthotropicTabularCorrectionFactor: 4991 return OrthotropicTabularCorrectionFactor(self._Entity.GetTabularCorrectionFactor(_types.CorrectionProperty(property.value), _types.CorrectionId(correction.value))) 4992 4993 def Save(self) -> None: 4994 ''' 4995 Save any changes to this orthotropic material to the database. 4996 ''' 4997 return self._Entity.Save() 4998 4999 5000class Vector2d: 5001 ''' 5002 Represents a readonly 2D vector. 5003 ''' 5004 def __init__(self, vector2d: _api.Vector2d): 5005 self._Entity = vector2d 5006 5007 def Create_Vector2d(x: float, y: float): 5008 return Vector2d(_api.Vector2d(x, y)) 5009 5010 @property 5011 def X(self) -> float: 5012 return self._Entity.X 5013 5014 @property 5015 def Y(self) -> float: 5016 return self._Entity.Y 5017 5018 @overload 5019 def Equals(self, other) -> bool: ... 5020 5021 @overload 5022 def Equals(self, obj) -> bool: ... 5023 5024 def GetHashCode(self) -> int: 5025 return self._Entity.GetHashCode() 5026 5027 def Equals(self, item1 = None) -> bool: 5028 if isinstance(item1, Vector2d): 5029 return self._Entity.Equals(item1._Entity) 5030 5031 return self._Entity.Equals(item1._Entity) 5032 5033 def __eq__(self, other): 5034 return self.Equals(other) 5035 5036 def __ne__(self, other): 5037 return not self.Equals(other) 5038 5039 5040class ElementSet(IdNameEntity): 5041 ''' 5042 A set of elements defined in the input file. 5043 ''' 5044 def __init__(self, elementSet: _api.ElementSet): 5045 self._Entity = elementSet 5046 5047 @property 5048 def Elements(self) -> ElementCol: 5049 result = self._Entity.Elements 5050 return ElementCol(result) if result is not None else None 5051 5052 5053class FemProperty(IdNameEntity): 5054 ''' 5055 A property description. 5056 ''' 5057 def __init__(self, femProperty: _api.FemProperty): 5058 self._Entity = femProperty 5059 5060 @property 5061 def Elements(self) -> ElementCol: 5062 result = self._Entity.Elements 5063 return ElementCol(result) if result is not None else None 5064 5065 @property 5066 def FemType(self) -> types.FemType: 5067 return types.FemType[self._Entity.FemType.ToString()] 5068 5069 5070class ElementSetCol(IdEntityCol[ElementSet]): 5071 def __init__(self, elementSetCol: _api.ElementSetCol): 5072 self._Entity = elementSetCol 5073 self._CollectedClass = ElementSet 5074 5075 @property 5076 def ElementSetColList(self) -> tuple[ElementSet]: 5077 return tuple([ElementSet(elementSetCol) for elementSetCol in self._Entity]) 5078 5079 def __getitem__(self, index: int): 5080 return self.ElementSetColList[index] 5081 5082 def __iter__(self): 5083 yield from self.ElementSetColList 5084 5085 def __len__(self): 5086 return len(self.ElementSetColList) 5087 5088 5089class FemPropertyCol(IdEntityCol[FemProperty]): 5090 def __init__(self, femPropertyCol: _api.FemPropertyCol): 5091 self._Entity = femPropertyCol 5092 self._CollectedClass = FemProperty 5093 5094 @property 5095 def FemPropertyColList(self) -> tuple[FemProperty]: 5096 return tuple([FemProperty(femPropertyCol) for femPropertyCol in self._Entity]) 5097 5098 def __getitem__(self, index: int): 5099 return self.FemPropertyColList[index] 5100 5101 def __iter__(self): 5102 yield from self.FemPropertyColList 5103 5104 def __len__(self): 5105 return len(self.FemPropertyColList) 5106 5107 5108class FemDataSet: 5109 def __init__(self, femDataSet: _api.FemDataSet): 5110 self._Entity = femDataSet 5111 5112 @property 5113 def FemProperties(self) -> FemPropertyCol: 5114 result = self._Entity.FemProperties 5115 return FemPropertyCol(result) if result is not None else None 5116 5117 @property 5118 def ElementSets(self) -> ElementSetCol: 5119 result = self._Entity.ElementSets 5120 return ElementSetCol(result) if result is not None else None 5121 5122 5123class PluginPackage(IdNameEntity): 5124 def __init__(self, pluginPackage: _api.PluginPackage): 5125 self._Entity = pluginPackage 5126 5127 @property 5128 def FilePath(self) -> str: 5129 return self._Entity.FilePath 5130 5131 @property 5132 def Version(self) -> str: 5133 return self._Entity.Version 5134 5135 @property 5136 def Description(self) -> str: 5137 return self._Entity.Description 5138 5139 @property 5140 def ModificationDate(self) -> DateTime: 5141 return self._Entity.ModificationDate 5142 5143 5144class Ply(IdNameEntity): 5145 def __init__(self, ply: _api.Ply): 5146 self._Entity = ply 5147 5148 @property 5149 def InnerCurves(self) -> list[int]: 5150 return [int32 for int32 in self._Entity.InnerCurves] 5151 5152 @property 5153 def OuterCurves(self) -> list[int]: 5154 return [int32 for int32 in self._Entity.OuterCurves] 5155 5156 @property 5157 def FiberDirectionCurves(self) -> list[int]: 5158 return [int32 for int32 in self._Entity.FiberDirectionCurves] 5159 5160 @property 5161 def Area(self) -> float: 5162 return self._Entity.Area 5163 5164 @property 5165 def Description(self) -> str: 5166 return self._Entity.Description 5167 5168 @property 5169 def Elements(self) -> ElementCol: 5170 result = self._Entity.Elements 5171 return ElementCol(result) if result is not None else None 5172 5173 @property 5174 def MaterialId(self) -> int: 5175 return self._Entity.MaterialId 5176 5177 @property 5178 def Orientation(self) -> int: 5179 return self._Entity.Orientation 5180 5181 @property 5182 def Sequence(self) -> int: 5183 return self._Entity.Sequence 5184 5185 @property 5186 def StructureId(self) -> int: 5187 return self._Entity.StructureId 5188 5189 @property 5190 def Thickness(self) -> float: 5191 return self._Entity.Thickness 5192 5193 5194class Rundeck(IdEntity): 5195 def __init__(self, rundeck: _api.Rundeck): 5196 self._Entity = rundeck 5197 5198 @property 5199 def InputFilePath(self) -> str: 5200 return self._Entity.InputFilePath 5201 5202 @property 5203 def IsPrimary(self) -> bool: 5204 return self._Entity.IsPrimary 5205 5206 @property 5207 def ResultFilePath(self) -> str: 5208 return self._Entity.ResultFilePath 5209 5210 def SetInputFilePath(self, filepath: str) -> RundeckUpdateStatus: 5211 return RundeckUpdateStatus[self._Entity.SetInputFilePath(filepath).ToString()] 5212 5213 def SetResultFilePath(self, filepath: str) -> RundeckUpdateStatus: 5214 return RundeckUpdateStatus[self._Entity.SetResultFilePath(filepath).ToString()] 5215 5216 5217class RundeckPathPair: 5218 def __init__(self, rundeckPathPair: _api.RundeckPathPair): 5219 self._Entity = rundeckPathPair 5220 5221 @property 5222 def InputFilePath(self) -> str: 5223 return self._Entity.InputFilePath 5224 5225 @property 5226 def ResultFilePath(self) -> str: 5227 return self._Entity.ResultFilePath 5228 5229 @InputFilePath.setter 5230 def InputFilePath(self, value: str) -> None: 5231 self._Entity.InputFilePath = value 5232 5233 @ResultFilePath.setter 5234 def ResultFilePath(self, value: str) -> None: 5235 self._Entity.ResultFilePath = value 5236 5237 5238class BeamLoads: 5239 def __init__(self, beamLoads: _api.BeamLoads): 5240 self._Entity = beamLoads 5241 5242 @property 5243 def AxialForce(self) -> float: 5244 return self._Entity.AxialForce 5245 5246 @property 5247 def MomentX(self) -> float: 5248 return self._Entity.MomentX 5249 5250 @property 5251 def MomentY(self) -> float: 5252 return self._Entity.MomentY 5253 5254 @property 5255 def ShearX(self) -> float: 5256 return self._Entity.ShearX 5257 5258 @property 5259 def ShearY(self) -> float: 5260 return self._Entity.ShearY 5261 5262 @property 5263 def Torque(self) -> float: 5264 return self._Entity.Torque 5265 5266 5267class SectionCut(IdNameEntity): 5268 def __init__(self, sectionCut: _api.SectionCut): 5269 self._Entity = sectionCut 5270 5271 @property 5272 def ReferencePoint(self) -> types.SectionCutPropertyLocation: 5273 ''' 5274 Centroid vs Origin 5275 ''' 5276 return types.SectionCutPropertyLocation[self._Entity.ReferencePoint.ToString()] 5277 5278 @property 5279 def HorizontalVector(self) -> Vector3d: 5280 ''' 5281 Represents a readonly 3D vector. 5282 ''' 5283 result = self._Entity.HorizontalVector 5284 return Vector3d(result) if result is not None else None 5285 5286 @property 5287 def NormalVector(self) -> Vector3d: 5288 ''' 5289 Represents a readonly 3D vector. 5290 ''' 5291 result = self._Entity.NormalVector 5292 return Vector3d(result) if result is not None else None 5293 5294 @property 5295 def OriginVector(self) -> Vector3d: 5296 ''' 5297 Represents a readonly 3D vector. 5298 ''' 5299 result = self._Entity.OriginVector 5300 return Vector3d(result) if result is not None else None 5301 5302 @property 5303 def VerticalVector(self) -> Vector3d: 5304 ''' 5305 Represents a readonly 3D vector. 5306 ''' 5307 result = self._Entity.VerticalVector 5308 return Vector3d(result) if result is not None else None 5309 5310 @property 5311 def MaxAngleBound(self) -> float: 5312 return self._Entity.MaxAngleBound 5313 5314 @property 5315 def MinAngleBound(self) -> float: 5316 return self._Entity.MinAngleBound 5317 5318 @property 5319 def MinStiffnessEihh(self) -> float: 5320 return self._Entity.MinStiffnessEihh 5321 5322 @property 5323 def MinStiffnessEivv(self) -> float: 5324 return self._Entity.MinStiffnessEivv 5325 5326 @property 5327 def MinStiffnessGJ(self) -> float: 5328 return self._Entity.MinStiffnessGJ 5329 5330 @property 5331 def ZoneStiffnessDistribution(self) -> float: 5332 return self._Entity.ZoneStiffnessDistribution 5333 5334 @property 5335 def CN_hmax(self) -> float: 5336 return self._Entity.CN_hmax 5337 5338 @property 5339 def CN_hmin(self) -> float: 5340 return self._Entity.CN_hmin 5341 5342 @property 5343 def CN_vmax(self) -> float: 5344 return self._Entity.CN_vmax 5345 5346 @property 5347 def CN_vmin(self) -> float: 5348 return self._Entity.CN_vmin 5349 5350 @property 5351 def CQ_hmax(self) -> float: 5352 return self._Entity.CQ_hmax 5353 5354 @property 5355 def CQ_hmin(self) -> float: 5356 return self._Entity.CQ_hmin 5357 5358 @property 5359 def CQ_vmax(self) -> float: 5360 return self._Entity.CQ_vmax 5361 5362 @property 5363 def CQ_vmin(self) -> float: 5364 return self._Entity.CQ_vmin 5365 5366 @property 5367 def CG(self) -> Vector2d: 5368 ''' 5369 Represents a readonly 2D vector. 5370 ''' 5371 result = self._Entity.CG 5372 return Vector2d(result) if result is not None else None 5373 5374 @property 5375 def CN(self) -> Vector2d: 5376 ''' 5377 Represents a readonly 2D vector. 5378 ''' 5379 result = self._Entity.CN 5380 return Vector2d(result) if result is not None else None 5381 5382 @property 5383 def CQ(self) -> Vector2d: 5384 ''' 5385 Represents a readonly 2D vector. 5386 ''' 5387 result = self._Entity.CQ 5388 return Vector2d(result) if result is not None else None 5389 5390 @property 5391 def EnclosedArea(self) -> float: 5392 return self._Entity.EnclosedArea 5393 5394 @property 5395 def NumberOfCells(self) -> int: 5396 return self._Entity.NumberOfCells 5397 5398 @property 5399 def EIhh(self) -> float: 5400 return self._Entity.EIhh 5401 5402 @property 5403 def EIhv(self) -> float: 5404 return self._Entity.EIhv 5405 5406 @property 5407 def EIvv(self) -> float: 5408 return self._Entity.EIvv 5409 5410 @property 5411 def GJ(self) -> float: 5412 return self._Entity.GJ 5413 5414 @property 5415 def EA(self) -> float: 5416 return self._Entity.EA 5417 5418 @property 5419 def EImax(self) -> float: 5420 return self._Entity.EImax 5421 5422 @property 5423 def EImin(self) -> float: 5424 return self._Entity.EImin 5425 5426 @property 5427 def PrincipalAngle(self) -> float: 5428 return self._Entity.PrincipalAngle 5429 5430 @property 5431 def Elements(self) -> ElementCol: 5432 result = self._Entity.Elements 5433 return ElementCol(result) if result is not None else None 5434 5435 @property 5436 def PlateElements(self) -> ElementCol: 5437 result = self._Entity.PlateElements 5438 return ElementCol(result) if result is not None else None 5439 5440 @property 5441 def BeamElements(self) -> ElementCol: 5442 result = self._Entity.BeamElements 5443 return ElementCol(result) if result is not None else None 5444 5445 @ReferencePoint.setter 5446 def ReferencePoint(self, value: types.SectionCutPropertyLocation) -> None: 5447 self._Entity.ReferencePoint = _types.SectionCutPropertyLocation(value.value) 5448 5449 @MaxAngleBound.setter 5450 def MaxAngleBound(self, value: float) -> None: 5451 self._Entity.MaxAngleBound = value 5452 5453 @MinAngleBound.setter 5454 def MinAngleBound(self, value: float) -> None: 5455 self._Entity.MinAngleBound = value 5456 5457 @MinStiffnessEihh.setter 5458 def MinStiffnessEihh(self, value: float) -> None: 5459 self._Entity.MinStiffnessEihh = value 5460 5461 @MinStiffnessEivv.setter 5462 def MinStiffnessEivv(self, value: float) -> None: 5463 self._Entity.MinStiffnessEivv = value 5464 5465 @MinStiffnessGJ.setter 5466 def MinStiffnessGJ(self, value: float) -> None: 5467 self._Entity.MinStiffnessGJ = value 5468 5469 @ZoneStiffnessDistribution.setter 5470 def ZoneStiffnessDistribution(self, value: float) -> None: 5471 self._Entity.ZoneStiffnessDistribution = value 5472 5473 @CN_hmax.setter 5474 def CN_hmax(self, value: float) -> None: 5475 self._Entity.CN_hmax = value 5476 5477 @CN_hmin.setter 5478 def CN_hmin(self, value: float) -> None: 5479 self._Entity.CN_hmin = value 5480 5481 @CN_vmax.setter 5482 def CN_vmax(self, value: float) -> None: 5483 self._Entity.CN_vmax = value 5484 5485 @CN_vmin.setter 5486 def CN_vmin(self, value: float) -> None: 5487 self._Entity.CN_vmin = value 5488 5489 @CQ_hmax.setter 5490 def CQ_hmax(self, value: float) -> None: 5491 self._Entity.CQ_hmax = value 5492 5493 @CQ_hmin.setter 5494 def CQ_hmin(self, value: float) -> None: 5495 self._Entity.CQ_hmin = value 5496 5497 @CQ_vmax.setter 5498 def CQ_vmax(self, value: float) -> None: 5499 self._Entity.CQ_vmax = value 5500 5501 @CQ_vmin.setter 5502 def CQ_vmin(self, value: float) -> None: 5503 self._Entity.CQ_vmin = value 5504 5505 def AlignToHorizontalPrincipalAxes(self) -> None: 5506 ''' 5507 Set this Section Cut's horizontal vector to be equal to its principal axis horizontal vector. 5508 ''' 5509 return self._Entity.AlignToHorizontalPrincipalAxes() 5510 5511 def AlignToVerticalPrincipalAxes(self) -> None: 5512 ''' 5513 Set this Section Cut's horizontal vector to be equal to its principal axis vertical vector. 5514 ''' 5515 return self._Entity.AlignToVerticalPrincipalAxes() 5516 5517 def SetHorizontalVector(self, vector: Vector3d) -> None: 5518 return self._Entity.SetHorizontalVector(vector._Entity) 5519 5520 def SetNormalVector(self, vector: Vector3d) -> None: 5521 return self._Entity.SetNormalVector(vector._Entity) 5522 5523 def SetOrigin(self, vector: Vector3d) -> None: 5524 return self._Entity.SetOrigin(vector._Entity) 5525 5526 def GetBeamLoads(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> BeamLoads: 5527 return BeamLoads(self._Entity.GetBeamLoads(loadCaseId, _types.LoadSubCaseFactor(factor.value))) 5528 5529 def InclinationAngle(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> float: 5530 return self._Entity.InclinationAngle(loadCaseId, _types.LoadSubCaseFactor(factor.value)) 5531 5532 def HorizontalIntercept(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> float: 5533 return self._Entity.HorizontalIntercept(loadCaseId, _types.LoadSubCaseFactor(factor.value)) 5534 5535 def VerticalIntercept(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> float: 5536 return self._Entity.VerticalIntercept(loadCaseId, _types.LoadSubCaseFactor(factor.value)) 5537 5538 def SetElements(self, elements: list[int]) -> bool: 5539 elementsList = MakeCSharpIntList(elements) 5540 return self._Entity.SetElements(elementsList) 5541 5542 5543class Set(ZoneJointContainer): 5544 def __init__(self, set: _api.Set): 5545 self._Entity = set 5546 5547 @property 5548 def Joints(self) -> JointCol: 5549 result = self._Entity.Joints 5550 return JointCol(result) if result is not None else None 5551 5552 @property 5553 def PanelSegments(self) -> PanelSegmentCol: 5554 result = self._Entity.PanelSegments 5555 return PanelSegmentCol(result) if result is not None else None 5556 5557 @property 5558 def Zones(self) -> ZoneCol: 5559 result = self._Entity.Zones 5560 return ZoneCol(result) if result is not None else None 5561 5562 @overload 5563 def AddJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5564 5565 @overload 5566 def AddPanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5567 5568 @overload 5569 def AddZones(self, zones: tuple[Zone]) -> CollectionModificationStatus: ... 5570 5571 @overload 5572 def RemoveJoints(self, jointIds: tuple[int]) -> CollectionModificationStatus: ... 5573 5574 @overload 5575 def RemovePanelSegments(self, segmentIds: tuple[int]) -> CollectionModificationStatus: ... 5576 5577 @overload 5578 def RemoveZones(self, zoneIds: tuple[int]) -> CollectionModificationStatus: ... 5579 5580 @overload 5581 def AddJoint(self, id: int) -> CollectionModificationStatus: ... 5582 5583 @overload 5584 def RemoveJoint(self, id: int) -> CollectionModificationStatus: ... 5585 5586 @overload 5587 def RemoveJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5588 5589 @overload 5590 def RemoveJoints(self, joints: JointCol) -> CollectionModificationStatus: ... 5591 5592 @overload 5593 def AddZone(self, id: int) -> CollectionModificationStatus: ... 5594 5595 @overload 5596 def AddZones(self, ids: tuple[int]) -> CollectionModificationStatus: ... 5597 5598 @overload 5599 def AddZone(self, zone: Zone) -> CollectionModificationStatus: ... 5600 5601 @overload 5602 def RemoveZone(self, id: int) -> CollectionModificationStatus: ... 5603 5604 @overload 5605 def RemoveZone(self, zone: Zone) -> CollectionModificationStatus: ... 5606 5607 @overload 5608 def RemoveZones(self, zones: ZoneCol) -> CollectionModificationStatus: ... 5609 5610 @overload 5611 def AddPanelSegment(self, id: int) -> CollectionModificationStatus: ... 5612 5613 @overload 5614 def RemovePanelSegment(self, id: int) -> CollectionModificationStatus: ... 5615 5616 @overload 5617 def RemovePanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5618 5619 @overload 5620 def RemovePanelSegments(self, segments: PanelSegmentCol) -> CollectionModificationStatus: ... 5621 5622 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 5623 if isinstance(item1, Joint): 5624 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5625 5626 if isinstance(item1, int): 5627 return CollectionModificationStatus(super().AddJoint(item1)) 5628 5629 return self._Entity.AddJoint(item1._Entity) 5630 5631 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 5632 if isinstance(item1, PanelSegment): 5633 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5634 5635 if isinstance(item1, int): 5636 return CollectionModificationStatus(super().AddPanelSegment(item1)) 5637 5638 return self._Entity.AddPanelSegment(item1._Entity) 5639 5640 def AddZones(self, item1 = None) -> CollectionModificationStatus: 5641 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], Zone): 5642 zonesList = List[_api.Zone]() 5643 if item1 is not None: 5644 for thing in item1: 5645 if thing is not None: 5646 zonesList.Add(thing._Entity) 5647 zonesEnumerable = IEnumerable(zonesList) 5648 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 5649 5650 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5651 return CollectionModificationStatus(super().AddZones(item1)) 5652 5653 return self._Entity.AddZones(item1) 5654 5655 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 5656 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5657 jointIdsList = MakeCSharpIntList(item1) 5658 jointIdsEnumerable = IEnumerable(jointIdsList) 5659 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 5660 5661 if isinstance(item1, JointCol): 5662 return CollectionModificationStatus(super().RemoveJoints(item1)) 5663 5664 return self._Entity.RemoveJoints(item1) 5665 5666 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 5667 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5668 segmentIdsList = MakeCSharpIntList(item1) 5669 segmentIdsEnumerable = IEnumerable(segmentIdsList) 5670 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 5671 5672 if isinstance(item1, PanelSegmentCol): 5673 return CollectionModificationStatus(super().RemovePanelSegments(item1)) 5674 5675 return self._Entity.RemovePanelSegments(item1) 5676 5677 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 5678 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5679 zoneIdsList = MakeCSharpIntList(item1) 5680 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5681 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 5682 5683 if isinstance(item1, ZoneCol): 5684 return CollectionModificationStatus(super().RemoveZones(item1)) 5685 5686 return self._Entity.RemoveZones(item1) 5687 5688 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 5689 if isinstance(item1, int): 5690 return CollectionModificationStatus(super().RemoveJoint(item1)) 5691 5692 if isinstance(item1, Joint): 5693 return CollectionModificationStatus(super().RemoveJoint(item1)) 5694 5695 return self._Entity.RemoveJoint(item1) 5696 5697 def AddZone(self, item1 = None) -> CollectionModificationStatus: 5698 if isinstance(item1, int): 5699 return CollectionModificationStatus(super().AddZone(item1)) 5700 5701 if isinstance(item1, Zone): 5702 return CollectionModificationStatus(super().AddZone(item1)) 5703 5704 return self._Entity.AddZone(item1) 5705 5706 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 5707 if isinstance(item1, int): 5708 return CollectionModificationStatus(super().RemoveZone(item1)) 5709 5710 if isinstance(item1, Zone): 5711 return CollectionModificationStatus(super().RemoveZone(item1)) 5712 5713 return self._Entity.RemoveZone(item1) 5714 5715 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 5716 if isinstance(item1, int): 5717 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 5718 5719 if isinstance(item1, PanelSegment): 5720 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 5721 5722 return self._Entity.RemovePanelSegment(item1) 5723 5724 5725class PlyCol(IdNameEntityCol[Ply]): 5726 def __init__(self, plyCol: _api.PlyCol): 5727 self._Entity = plyCol 5728 self._CollectedClass = Ply 5729 5730 @property 5731 def PlyColList(self) -> tuple[Ply]: 5732 return tuple([Ply(plyCol) for plyCol in self._Entity]) 5733 5734 def Delete(self, id: int) -> CollectionModificationStatus: 5735 return CollectionModificationStatus[self._Entity.Delete(id).ToString()] 5736 5737 def DeleteAll(self) -> None: 5738 ''' 5739 Delete all plies in the collection. 5740 ''' 5741 return self._Entity.DeleteAll() 5742 5743 def ExportToCSV(self, filepath: str) -> None: 5744 return self._Entity.ExportToCSV(filepath) 5745 5746 def ImportCSV(self, filepath: str) -> None: 5747 return self._Entity.ImportCSV(filepath) 5748 5749 @overload 5750 def Get(self, name: str) -> Ply: ... 5751 5752 @overload 5753 def Get(self, id: int) -> Ply: ... 5754 5755 def Get(self, item1 = None) -> Ply: 5756 if isinstance(item1, str): 5757 return Ply(super().Get(item1)) 5758 5759 if isinstance(item1, int): 5760 return Ply(super().Get(item1)) 5761 5762 return self._Entity.Get(item1) 5763 5764 def __getitem__(self, index: int): 5765 return self.PlyColList[index] 5766 5767 def __iter__(self): 5768 yield from self.PlyColList 5769 5770 def __len__(self): 5771 return len(self.PlyColList) 5772 5773 5774class Structure(ZoneJointContainer): 5775 def __init__(self, structure: _api.Structure): 5776 self._Entity = structure 5777 5778 @property 5779 def Plies(self) -> PlyCol: 5780 result = self._Entity.Plies 5781 return PlyCol(result) if result is not None else None 5782 5783 @property 5784 def Joints(self) -> JointCol: 5785 result = self._Entity.Joints 5786 return JointCol(result) if result is not None else None 5787 5788 @property 5789 def PanelSegments(self) -> PanelSegmentCol: 5790 result = self._Entity.PanelSegments 5791 return PanelSegmentCol(result) if result is not None else None 5792 5793 @property 5794 def Zones(self) -> ZoneCol: 5795 result = self._Entity.Zones 5796 return ZoneCol(result) if result is not None else None 5797 5798 def ExportVCP(self, fileName: str) -> None: 5799 return self._Entity.ExportVCP(fileName) 5800 5801 def AddElements(self, elementIds: tuple[int]) -> CollectionModificationStatus: 5802 elementIdsList = MakeCSharpIntList(elementIds) 5803 elementIdsEnumerable = IEnumerable(elementIdsList) 5804 return CollectionModificationStatus[self._Entity.AddElements(elementIdsEnumerable).ToString()] 5805 5806 @overload 5807 def AddJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5808 5809 @overload 5810 def AddPanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5811 5812 def AddPfemProperties(self, pfemPropertyIds: tuple[int]) -> CollectionModificationStatus: 5813 pfemPropertyIdsList = MakeCSharpIntList(pfemPropertyIds) 5814 pfemPropertyIdsEnumerable = IEnumerable(pfemPropertyIdsList) 5815 return CollectionModificationStatus[self._Entity.AddPfemProperties(pfemPropertyIdsEnumerable).ToString()] 5816 5817 @overload 5818 def AddZones(self, zones: tuple[Zone]) -> CollectionModificationStatus: ... 5819 5820 def CreateZone(self, elementIds: tuple[int], name: str = None) -> Zone: 5821 elementIdsList = MakeCSharpIntList(elementIds) 5822 elementIdsEnumerable = IEnumerable(elementIdsList) 5823 result = self._Entity.CreateZone(elementIdsEnumerable, name) 5824 thisClass = type(result).__name__ 5825 givenClass = Zone 5826 for subclass in Zone.__subclasses__(): 5827 if subclass.__name__ == thisClass: 5828 givenClass = subclass 5829 return givenClass(result) 5830 5831 def CreatePanelSegment(self, discreteTechnique: types.DiscreteTechnique, discreteElementLkp: dict[types.DiscreteDefinitionType, list[int]], name: str = None) -> PanelSegment: 5832 discreteElementLkpDict = Dictionary[_types.DiscreteDefinitionType, List[int]]() 5833 for kvp in discreteElementLkp: 5834 discreteElementLkpDict.Add(_types.DiscreteDefinitionType(kvp.value), MakeCSharpIntList(discreteElementLkp[kvp])) 5835 return PanelSegment(self._Entity.CreatePanelSegment(_types.DiscreteTechnique(discreteTechnique.value), discreteElementLkpDict, name)) 5836 5837 @overload 5838 def Remove(self, zoneIds: tuple[int], jointIds: tuple[int]) -> CollectionModificationStatus: ... 5839 5840 @overload 5841 def Remove(self, zoneIds: tuple[int], jointIds: tuple[int], panelSegmentIds: tuple[int]) -> CollectionModificationStatus: ... 5842 5843 @overload 5844 def RemoveJoints(self, jointIds: tuple[int]) -> CollectionModificationStatus: ... 5845 5846 @overload 5847 def RemovePanelSegments(self, segmentIds: tuple[int]) -> CollectionModificationStatus: ... 5848 5849 @overload 5850 def RemoveZones(self, zoneIds: tuple[int]) -> CollectionModificationStatus: ... 5851 5852 @overload 5853 def AddJoint(self, id: int) -> CollectionModificationStatus: ... 5854 5855 @overload 5856 def RemoveJoint(self, id: int) -> CollectionModificationStatus: ... 5857 5858 @overload 5859 def RemoveJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5860 5861 @overload 5862 def RemoveJoints(self, joints: JointCol) -> CollectionModificationStatus: ... 5863 5864 @overload 5865 def AddZone(self, id: int) -> CollectionModificationStatus: ... 5866 5867 @overload 5868 def AddZones(self, ids: tuple[int]) -> CollectionModificationStatus: ... 5869 5870 @overload 5871 def AddZone(self, zone: Zone) -> CollectionModificationStatus: ... 5872 5873 @overload 5874 def RemoveZone(self, id: int) -> CollectionModificationStatus: ... 5875 5876 @overload 5877 def RemoveZone(self, zone: Zone) -> CollectionModificationStatus: ... 5878 5879 @overload 5880 def RemoveZones(self, zones: ZoneCol) -> CollectionModificationStatus: ... 5881 5882 @overload 5883 def AddPanelSegment(self, id: int) -> CollectionModificationStatus: ... 5884 5885 @overload 5886 def RemovePanelSegment(self, id: int) -> CollectionModificationStatus: ... 5887 5888 @overload 5889 def RemovePanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5890 5891 @overload 5892 def RemovePanelSegments(self, segments: PanelSegmentCol) -> CollectionModificationStatus: ... 5893 5894 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 5895 if isinstance(item1, Joint): 5896 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5897 5898 if isinstance(item1, int): 5899 return CollectionModificationStatus(super().AddJoint(item1)) 5900 5901 return self._Entity.AddJoint(item1._Entity) 5902 5903 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 5904 if isinstance(item1, PanelSegment): 5905 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5906 5907 if isinstance(item1, int): 5908 return CollectionModificationStatus(super().AddPanelSegment(item1)) 5909 5910 return self._Entity.AddPanelSegment(item1._Entity) 5911 5912 def AddZones(self, item1 = None) -> CollectionModificationStatus: 5913 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], Zone): 5914 zonesList = List[_api.Zone]() 5915 if item1 is not None: 5916 for thing in item1: 5917 if thing is not None: 5918 zonesList.Add(thing._Entity) 5919 zonesEnumerable = IEnumerable(zonesList) 5920 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 5921 5922 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5923 return CollectionModificationStatus(super().AddZones(item1)) 5924 5925 return self._Entity.AddZones(item1) 5926 5927 def Remove(self, item1 = None, item2 = None, item3 = None) -> CollectionModificationStatus: 5928 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int) and isinstance(item2, tuple) and len(item2) > 0 and isinstance(item2[0], int) and isinstance(item3, tuple) and len(item3) > 0 and isinstance(item3[0], int): 5929 zoneIdsList = MakeCSharpIntList(item1) 5930 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5931 jointIdsList = MakeCSharpIntList(item2) 5932 jointIdsEnumerable = IEnumerable(jointIdsList) 5933 panelSegmentIdsList = MakeCSharpIntList(item3) 5934 panelSegmentIdsEnumerable = IEnumerable(panelSegmentIdsList) 5935 return CollectionModificationStatus[self._Entity.Remove(zoneIdsEnumerable, jointIdsEnumerable, panelSegmentIdsEnumerable).ToString()] 5936 5937 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int) and isinstance(item2, tuple) and len(item2) > 0 and isinstance(item2[0], int): 5938 zoneIdsList = MakeCSharpIntList(item1) 5939 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5940 jointIdsList = MakeCSharpIntList(item2) 5941 jointIdsEnumerable = IEnumerable(jointIdsList) 5942 return CollectionModificationStatus[self._Entity.Remove(zoneIdsEnumerable, jointIdsEnumerable).ToString()] 5943 5944 return self._Entity.Remove(item1, item2, item3) 5945 5946 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 5947 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5948 jointIdsList = MakeCSharpIntList(item1) 5949 jointIdsEnumerable = IEnumerable(jointIdsList) 5950 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 5951 5952 if isinstance(item1, JointCol): 5953 return CollectionModificationStatus(super().RemoveJoints(item1)) 5954 5955 return self._Entity.RemoveJoints(item1) 5956 5957 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 5958 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5959 segmentIdsList = MakeCSharpIntList(item1) 5960 segmentIdsEnumerable = IEnumerable(segmentIdsList) 5961 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 5962 5963 if isinstance(item1, PanelSegmentCol): 5964 return CollectionModificationStatus(super().RemovePanelSegments(item1)) 5965 5966 return self._Entity.RemovePanelSegments(item1) 5967 5968 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 5969 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5970 zoneIdsList = MakeCSharpIntList(item1) 5971 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5972 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 5973 5974 if isinstance(item1, ZoneCol): 5975 return CollectionModificationStatus(super().RemoveZones(item1)) 5976 5977 return self._Entity.RemoveZones(item1) 5978 5979 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 5980 if isinstance(item1, int): 5981 return CollectionModificationStatus(super().RemoveJoint(item1)) 5982 5983 if isinstance(item1, Joint): 5984 return CollectionModificationStatus(super().RemoveJoint(item1)) 5985 5986 return self._Entity.RemoveJoint(item1) 5987 5988 def AddZone(self, item1 = None) -> CollectionModificationStatus: 5989 if isinstance(item1, int): 5990 return CollectionModificationStatus(super().AddZone(item1)) 5991 5992 if isinstance(item1, Zone): 5993 return CollectionModificationStatus(super().AddZone(item1)) 5994 5995 return self._Entity.AddZone(item1) 5996 5997 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 5998 if isinstance(item1, int): 5999 return CollectionModificationStatus(super().RemoveZone(item1)) 6000 6001 if isinstance(item1, Zone): 6002 return CollectionModificationStatus(super().RemoveZone(item1)) 6003 6004 return self._Entity.RemoveZone(item1) 6005 6006 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 6007 if isinstance(item1, int): 6008 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 6009 6010 if isinstance(item1, PanelSegment): 6011 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 6012 6013 return self._Entity.RemovePanelSegment(item1) 6014 6015 6016class AnalysisPropertyCol(IdNameEntityCol[AnalysisProperty]): 6017 def __init__(self, analysisPropertyCol: _api.AnalysisPropertyCol): 6018 self._Entity = analysisPropertyCol 6019 self._CollectedClass = AnalysisProperty 6020 6021 @property 6022 def AnalysisPropertyColList(self) -> tuple[AnalysisProperty]: 6023 return tuple([AnalysisProperty(analysisPropertyCol) for analysisPropertyCol in self._Entity]) 6024 6025 def CreateAnalysisProperty(self, type: types.FamilyCategory, name: str = None) -> AnalysisProperty: 6026 return AnalysisProperty(self._Entity.CreateAnalysisProperty(_types.FamilyCategory(type.value), name)) 6027 6028 @overload 6029 def DeleteAnalysisProperty(self, name: str) -> bool: ... 6030 6031 @overload 6032 def DeleteAnalysisProperty(self, id: int) -> bool: ... 6033 6034 @overload 6035 def Get(self, name: str) -> AnalysisProperty: ... 6036 6037 @overload 6038 def Get(self, id: int) -> AnalysisProperty: ... 6039 6040 def DeleteAnalysisProperty(self, item1 = None) -> bool: 6041 if isinstance(item1, str): 6042 return self._Entity.DeleteAnalysisProperty(item1) 6043 6044 if isinstance(item1, int): 6045 return self._Entity.DeleteAnalysisProperty(item1) 6046 6047 return self._Entity.DeleteAnalysisProperty(item1) 6048 6049 def Get(self, item1 = None) -> AnalysisProperty: 6050 if isinstance(item1, str): 6051 return AnalysisProperty(super().Get(item1)) 6052 6053 if isinstance(item1, int): 6054 return AnalysisProperty(super().Get(item1)) 6055 6056 return self._Entity.Get(item1) 6057 6058 def __getitem__(self, index: int): 6059 return self.AnalysisPropertyColList[index] 6060 6061 def __iter__(self): 6062 yield from self.AnalysisPropertyColList 6063 6064 def __len__(self): 6065 return len(self.AnalysisPropertyColList) 6066 6067 6068class DesignPropertyCol(IdNameEntityCol[DesignProperty]): 6069 def __init__(self, designPropertyCol: _api.DesignPropertyCol): 6070 self._Entity = designPropertyCol 6071 self._CollectedClass = DesignProperty 6072 6073 @property 6074 def DesignPropertyColList(self) -> tuple[DesignProperty]: 6075 return tuple([DesignProperty(designPropertyCol) for designPropertyCol in self._Entity]) 6076 6077 def CreateDesignProperty(self, familyConcept: types.FamilyConceptUID, materialMode: types.MaterialMode = types.MaterialMode.Any, name: str = None) -> DesignProperty: 6078 result = self._Entity.CreateDesignProperty(_types.FamilyConceptUID(familyConcept.value), _types.MaterialMode(materialMode.value), name) 6079 thisClass = type(result).__name__ 6080 givenClass = DesignProperty 6081 for subclass in DesignProperty.__subclasses__(): 6082 if subclass.__name__ == thisClass: 6083 givenClass = subclass 6084 return givenClass(result) 6085 6086 @overload 6087 def Get(self, name: str) -> DesignProperty: ... 6088 6089 @overload 6090 def Get(self, id: int) -> DesignProperty: ... 6091 6092 def Get(self, item1 = None) -> DesignProperty: 6093 if isinstance(item1, str): 6094 return DesignProperty(super().Get(item1)) 6095 6096 if isinstance(item1, int): 6097 return DesignProperty(super().Get(item1)) 6098 6099 return self._Entity.Get(item1) 6100 6101 def __getitem__(self, index: int): 6102 return self.DesignPropertyColList[index] 6103 6104 def __iter__(self): 6105 yield from self.DesignPropertyColList 6106 6107 def __len__(self): 6108 return len(self.DesignPropertyColList) 6109 6110 6111class LoadPropertyCol(IdNameEntityCol[LoadProperty]): 6112 def __init__(self, loadPropertyCol: _api.LoadPropertyCol): 6113 self._Entity = loadPropertyCol 6114 self._CollectedClass = LoadProperty 6115 6116 @property 6117 def LoadPropertyColList(self) -> tuple[LoadProperty]: 6118 return tuple([LoadProperty(loadPropertyCol) for loadPropertyCol in self._Entity]) 6119 6120 def CreateLoadProperty(self, loadPropertyType: types.LoadPropertyType, category: types.FamilyCategory, name: str = None) -> LoadProperty: 6121 result = self._Entity.CreateLoadProperty(_types.LoadPropertyType(loadPropertyType.value), _types.FamilyCategory(category.value), name) 6122 thisClass = type(result).__name__ 6123 givenClass = LoadProperty 6124 for subclass in LoadProperty.__subclasses__(): 6125 if subclass.__name__ == thisClass: 6126 givenClass = subclass 6127 return givenClass(result) 6128 6129 @overload 6130 def DeleteLoadProperty(self, id: int) -> bool: ... 6131 6132 @overload 6133 def DeleteLoadProperty(self, name: str) -> bool: ... 6134 6135 @overload 6136 def Get(self, name: str) -> LoadProperty: ... 6137 6138 @overload 6139 def Get(self, id: int) -> LoadProperty: ... 6140 6141 def DeleteLoadProperty(self, item1 = None) -> bool: 6142 if isinstance(item1, int): 6143 return self._Entity.DeleteLoadProperty(item1) 6144 6145 if isinstance(item1, str): 6146 return self._Entity.DeleteLoadProperty(item1) 6147 6148 return self._Entity.DeleteLoadProperty(item1) 6149 6150 def Get(self, item1 = None) -> LoadProperty: 6151 if isinstance(item1, str): 6152 return LoadProperty(super().Get(item1)) 6153 6154 if isinstance(item1, int): 6155 return LoadProperty(super().Get(item1)) 6156 6157 return self._Entity.Get(item1) 6158 6159 def __getitem__(self, index: int): 6160 return self.LoadPropertyColList[index] 6161 6162 def __iter__(self): 6163 yield from self.LoadPropertyColList 6164 6165 def __len__(self): 6166 return len(self.LoadPropertyColList) 6167 6168 6169class DesignLoadCol(IdNameEntityCol[DesignLoad]): 6170 def __init__(self, designLoadCol: _api.DesignLoadCol): 6171 self._Entity = designLoadCol 6172 self._CollectedClass = DesignLoad 6173 6174 @property 6175 def DesignLoadColList(self) -> tuple[DesignLoad]: 6176 return tuple([DesignLoad(designLoadCol) for designLoadCol in self._Entity]) 6177 6178 @overload 6179 def Get(self, name: str) -> DesignLoad: ... 6180 6181 @overload 6182 def Get(self, id: int) -> DesignLoad: ... 6183 6184 def Get(self, item1 = None) -> DesignLoad: 6185 if isinstance(item1, str): 6186 return DesignLoad(super().Get(item1)) 6187 6188 if isinstance(item1, int): 6189 return DesignLoad(super().Get(item1)) 6190 6191 return self._Entity.Get(item1) 6192 6193 def __getitem__(self, index: int): 6194 return self.DesignLoadColList[index] 6195 6196 def __iter__(self): 6197 yield from self.DesignLoadColList 6198 6199 def __len__(self): 6200 return len(self.DesignLoadColList) 6201 6202 6203class DiscreteFieldCol(IdNameEntityCol[DiscreteField]): 6204 def __init__(self, discreteFieldCol: _api.DiscreteFieldCol): 6205 self._Entity = discreteFieldCol 6206 self._CollectedClass = DiscreteField 6207 6208 @property 6209 def DiscreteFieldColList(self) -> tuple[DiscreteField]: 6210 return tuple([DiscreteField(discreteFieldCol) for discreteFieldCol in self._Entity]) 6211 6212 def Create(self, entityType: types.DiscreteFieldPhysicalEntityType, dataType: types.DiscreteFieldDataType, name: str = None) -> DiscreteField: 6213 return DiscreteField(self._Entity.Create(_types.DiscreteFieldPhysicalEntityType(entityType.value), _types.DiscreteFieldDataType(dataType.value), name)) 6214 6215 def CreateFromVCP(self, filepath: str) -> list[DiscreteField]: 6216 return [DiscreteField(discreteField) for discreteField in self._Entity.CreateFromVCP(filepath)] 6217 6218 def Delete(self, id: int) -> CollectionModificationStatus: 6219 return CollectionModificationStatus[self._Entity.Delete(id).ToString()] 6220 6221 def CreateByPointMapToElements(self, elementIds: list[int], discreteFieldIds: list[int], suffix: str = None, tolerance: float = None) -> list[DiscreteField]: 6222 elementIdsList = MakeCSharpIntList(elementIds) 6223 discreteFieldIdsList = MakeCSharpIntList(discreteFieldIds) 6224 return [DiscreteField(discreteField) for discreteField in self._Entity.CreateByPointMapToElements(elementIdsList, discreteFieldIdsList, suffix, tolerance)] 6225 6226 @overload 6227 def Get(self, name: str) -> DiscreteField: ... 6228 6229 @overload 6230 def Get(self, id: int) -> DiscreteField: ... 6231 6232 def Get(self, item1 = None) -> DiscreteField: 6233 if isinstance(item1, str): 6234 return DiscreteField(super().Get(item1)) 6235 6236 if isinstance(item1, int): 6237 return DiscreteField(super().Get(item1)) 6238 6239 return self._Entity.Get(item1) 6240 6241 def __getitem__(self, index: int): 6242 return self.DiscreteFieldColList[index] 6243 6244 def __iter__(self): 6245 yield from self.DiscreteFieldColList 6246 6247 def __len__(self): 6248 return len(self.DiscreteFieldColList) 6249 6250 6251class ZoneJointContainerCol(IdNameEntityCol, Generic[T]): 6252 def __init__(self, zoneJointContainerCol: _api.ZoneJointContainerCol): 6253 self._Entity = zoneJointContainerCol 6254 self._CollectedClass = T 6255 6256 @property 6257 def ZoneJointContainerColList(self) -> tuple[T]: 6258 if self._Entity.Count() <= 0: 6259 return () 6260 thisClass = type(self._Entity._items[0]).__name__ 6261 givenClass = T 6262 for subclass in T.__subclasses__(): 6263 if subclass.__name__ == thisClass: 6264 givenClass = subclass 6265 return tuple([givenClass(zoneJointContainerCol) for zoneJointContainerCol in self._Entity]) 6266 6267 @abstractmethod 6268 def Create(self, name: str) -> T: 6269 return self._Entity.Create(name) 6270 6271 @overload 6272 def Get(self, name: str) -> T: ... 6273 6274 @overload 6275 def Get(self, id: int) -> T: ... 6276 6277 def Get(self, item1 = None) -> T: 6278 if isinstance(item1, str): 6279 return super().Get(item1) 6280 6281 if isinstance(item1, int): 6282 return super().Get(item1) 6283 6284 return self._Entity.Get(item1) 6285 6286 def __getitem__(self, index: int): 6287 return self.ZoneJointContainerColList[index] 6288 6289 def __iter__(self): 6290 yield from self.ZoneJointContainerColList 6291 6292 def __len__(self): 6293 return len(self.ZoneJointContainerColList) 6294 6295 6296class RundeckCol(IdEntityCol[Rundeck]): 6297 def __init__(self, rundeckCol: _api.RundeckCol): 6298 self._Entity = rundeckCol 6299 self._CollectedClass = Rundeck 6300 6301 @property 6302 def RundeckColList(self) -> tuple[Rundeck]: 6303 return tuple([Rundeck(rundeckCol) for rundeckCol in self._Entity]) 6304 6305 def AddRundeck(self, inputPath: str, resultPath: str = None) -> Rundeck: 6306 return Rundeck(self._Entity.AddRundeck(inputPath, resultPath)) 6307 6308 def ReassignPrimary(self, id: int) -> RundeckUpdateStatus: 6309 return RundeckUpdateStatus[self._Entity.ReassignPrimary(id).ToString()] 6310 6311 def RemoveRundeck(self, id: int) -> RundeckRemoveStatus: 6312 return RundeckRemoveStatus[self._Entity.RemoveRundeck(id).ToString()] 6313 6314 def UpdateAllRundecks(self, newPaths: list[RundeckPathPair]) -> RundeckBulkUpdateStatus: 6315 newPathsList = List[_api.RundeckPathPair]() 6316 if newPaths is not None: 6317 for thing in newPaths: 6318 if thing is not None: 6319 newPathsList.Add(thing._Entity) 6320 return RundeckBulkUpdateStatus[self._Entity.UpdateAllRundecks(newPathsList).ToString()] 6321 6322 def GetRundeckPathSetters(self) -> list[RundeckPathPair]: 6323 ''' 6324 Get RundeckPathSetters to be edited and input to UpdateAllRundecks. 6325 ''' 6326 return [RundeckPathPair(rundeckPathPair) for rundeckPathPair in self._Entity.GetRundeckPathSetters()] 6327 6328 def ReplaceStringInAllPaths(self, stringToReplace: str, newString: str) -> RundeckBulkUpdateStatus: 6329 return RundeckBulkUpdateStatus[self._Entity.ReplaceStringInAllPaths(stringToReplace, newString).ToString()] 6330 6331 def __getitem__(self, index: int): 6332 return self.RundeckColList[index] 6333 6334 def __iter__(self): 6335 yield from self.RundeckColList 6336 6337 def __len__(self): 6338 return len(self.RundeckColList) 6339 6340 6341class SectionCutCol(IdNameEntityCol[SectionCut]): 6342 def __init__(self, sectionCutCol: _api.SectionCutCol): 6343 self._Entity = sectionCutCol 6344 self._CollectedClass = SectionCut 6345 6346 @property 6347 def SectionCutColList(self) -> tuple[SectionCut]: 6348 return tuple([SectionCut(sectionCutCol) for sectionCutCol in self._Entity]) 6349 6350 def Create(self, origin: Vector3d, normal: Vector3d, horizontal: Vector3d, name: str = None) -> SectionCut: 6351 return SectionCut(self._Entity.Create(origin._Entity, normal._Entity, horizontal._Entity, name)) 6352 6353 def Delete(self, id: int) -> CollectionModificationStatus: 6354 return CollectionModificationStatus[self._Entity.Delete(id).ToString()] 6355 6356 @overload 6357 def Get(self, name: str) -> SectionCut: ... 6358 6359 @overload 6360 def Get(self, id: int) -> SectionCut: ... 6361 6362 def Get(self, item1 = None) -> SectionCut: 6363 if isinstance(item1, str): 6364 return SectionCut(super().Get(item1)) 6365 6366 if isinstance(item1, int): 6367 return SectionCut(super().Get(item1)) 6368 6369 return self._Entity.Get(item1) 6370 6371 def __getitem__(self, index: int): 6372 return self.SectionCutColList[index] 6373 6374 def __iter__(self): 6375 yield from self.SectionCutColList 6376 6377 def __len__(self): 6378 return len(self.SectionCutColList) 6379 6380 6381class SetCol(ZoneJointContainerCol[Set]): 6382 def __init__(self, setCol: _api.SetCol): 6383 self._Entity = setCol 6384 self._CollectedClass = Set 6385 6386 @property 6387 def SetColList(self) -> tuple[Set]: 6388 return tuple([Set(setCol) for setCol in self._Entity]) 6389 6390 def Create(self, name: str = None) -> Set: 6391 return Set(self._Entity.Create(name)) 6392 6393 @overload 6394 def Get(self, name: str) -> Set: ... 6395 6396 @overload 6397 def Get(self, id: int) -> Set: ... 6398 6399 def Get(self, item1 = None) -> Set: 6400 if isinstance(item1, str): 6401 return Set(super().Get(item1)) 6402 6403 if isinstance(item1, int): 6404 return Set(super().Get(item1)) 6405 6406 return self._Entity.Get(item1) 6407 6408 def __getitem__(self, index: int): 6409 return self.SetColList[index] 6410 6411 def __iter__(self): 6412 yield from self.SetColList 6413 6414 def __len__(self): 6415 return len(self.SetColList) 6416 6417 6418class StructureCol(ZoneJointContainerCol[Structure]): 6419 def __init__(self, structureCol: _api.StructureCol): 6420 self._Entity = structureCol 6421 self._CollectedClass = Structure 6422 6423 @property 6424 def StructureColList(self) -> tuple[Structure]: 6425 return tuple([Structure(structureCol) for structureCol in self._Entity]) 6426 6427 def Create(self, name: str = None) -> Structure: 6428 return Structure(self._Entity.Create(name)) 6429 6430 @overload 6431 def DeleteStructure(self, structure: Structure) -> bool: ... 6432 6433 @overload 6434 def DeleteStructure(self, name: str) -> bool: ... 6435 6436 @overload 6437 def DeleteStructure(self, id: int) -> bool: ... 6438 6439 @overload 6440 def Get(self, name: str) -> Structure: ... 6441 6442 @overload 6443 def Get(self, id: int) -> Structure: ... 6444 6445 def DeleteStructure(self, item1 = None) -> bool: 6446 if isinstance(item1, Structure): 6447 return self._Entity.DeleteStructure(item1._Entity) 6448 6449 if isinstance(item1, str): 6450 return self._Entity.DeleteStructure(item1) 6451 6452 if isinstance(item1, int): 6453 return self._Entity.DeleteStructure(item1) 6454 6455 return self._Entity.DeleteStructure(item1._Entity) 6456 6457 def Get(self, item1 = None) -> Structure: 6458 if isinstance(item1, str): 6459 return Structure(super().Get(item1)) 6460 6461 if isinstance(item1, int): 6462 return Structure(super().Get(item1)) 6463 6464 return self._Entity.Get(item1) 6465 6466 def __getitem__(self, index: int): 6467 return self.StructureColList[index] 6468 6469 def __iter__(self): 6470 yield from self.StructureColList 6471 6472 def __len__(self): 6473 return len(self.StructureColList) 6474 6475 6476class Project: 6477 ''' 6478 Represents a HyperX project within a database. 6479 ''' 6480 def __init__(self, project: _api.Project): 6481 self._Entity = project 6482 6483 @property 6484 def HyperFea(self) -> HyperFea: 6485 result = self._Entity.HyperFea 6486 return HyperFea(result) if result is not None else None 6487 6488 @property 6489 def WorkingFolder(self) -> str: 6490 return self._Entity.WorkingFolder 6491 6492 @property 6493 def FemDataSet(self) -> FemDataSet: 6494 result = self._Entity.FemDataSet 6495 return FemDataSet(result) if result is not None else None 6496 6497 @property 6498 def Beams(self) -> ZoneCol: 6499 result = self._Entity.Beams 6500 return ZoneCol(result) if result is not None else None 6501 6502 @property 6503 def Id(self) -> int: 6504 return self._Entity.Id 6505 6506 @property 6507 def Joints(self) -> JointCol: 6508 result = self._Entity.Joints 6509 return JointCol(result) if result is not None else None 6510 6511 @property 6512 def Name(self) -> str: 6513 return self._Entity.Name 6514 6515 @property 6516 def Panels(self) -> ZoneCol: 6517 result = self._Entity.Panels 6518 return ZoneCol(result) if result is not None else None 6519 6520 @property 6521 def Rundecks(self) -> RundeckCol: 6522 result = self._Entity.Rundecks 6523 return RundeckCol(result) if result is not None else None 6524 6525 @property 6526 def Sets(self) -> SetCol: 6527 result = self._Entity.Sets 6528 return SetCol(result) if result is not None else None 6529 6530 @property 6531 def Structures(self) -> StructureCol: 6532 result = self._Entity.Structures 6533 return StructureCol(result) if result is not None else None 6534 6535 @property 6536 def Zones(self) -> ZoneCol: 6537 result = self._Entity.Zones 6538 return ZoneCol(result) if result is not None else None 6539 6540 @property 6541 def PanelSegments(self) -> PanelSegmentCol: 6542 result = self._Entity.PanelSegments 6543 return PanelSegmentCol(result) if result is not None else None 6544 6545 @property 6546 def SectionCuts(self) -> SectionCutCol: 6547 result = self._Entity.SectionCuts 6548 return SectionCutCol(result) if result is not None else None 6549 6550 @property 6551 def DesignLoads(self) -> DesignLoadCol: 6552 result = self._Entity.DesignLoads 6553 return DesignLoadCol(result) if result is not None else None 6554 6555 @property 6556 def DiscreteFieldTables(self) -> DiscreteFieldCol: 6557 result = self._Entity.DiscreteFieldTables 6558 return DiscreteFieldCol(result) if result is not None else None 6559 6560 @property 6561 def AnalysisProperties(self) -> AnalysisPropertyCol: 6562 result = self._Entity.AnalysisProperties 6563 return AnalysisPropertyCol(result) if result is not None else None 6564 6565 @property 6566 def DesignProperties(self) -> DesignPropertyCol: 6567 result = self._Entity.DesignProperties 6568 return DesignPropertyCol(result) if result is not None else None 6569 6570 @property 6571 def LoadProperties(self) -> LoadPropertyCol: 6572 result = self._Entity.LoadProperties 6573 return LoadPropertyCol(result) if result is not None else None 6574 6575 @property 6576 def FemFormat(self) -> types.ProjectModelFormat: 6577 return types.ProjectModelFormat[self._Entity.FemFormat.ToString()] 6578 6579 def Upload(self, uploadSetName: str, company: str, program: str, tags: list[str], notes: str, zoneIds: set[int], jointIds: set[int]) -> bool: 6580 tagsList = List[str]() 6581 if tags is not None: 6582 for thing in tags: 6583 if thing is not None: 6584 tagsList.Add(thing) 6585 zoneIdsSet = HashSet[int]() 6586 if zoneIds is not None: 6587 for thing in zoneIds: 6588 if thing is not None: 6589 zoneIdsSet.Add(thing) 6590 jointIdsSet = HashSet[int]() 6591 if jointIds is not None: 6592 for thing in jointIds: 6593 if thing is not None: 6594 jointIdsSet.Add(thing) 6595 return self._Entity.Upload(uploadSetName, company, program, tagsList, notes, zoneIdsSet, jointIdsSet) 6596 6597 def GetDashboardCompanies(self) -> list[str]: 6598 ''' 6599 This method fetches an array of Dashboard company names that are available to the user who is currently logged in. The URL and authentication token are taken from the last 6600 Dashboard login made through HyperX. 6601 ''' 6602 return list[str](self._Entity.GetDashboardCompanies()) 6603 6604 def GetDashboardPrograms(self, companyName: str) -> list[str]: 6605 return list[str](self._Entity.GetDashboardPrograms(companyName)) 6606 6607 def GetDashboardTags(self, companyName: str) -> list[str]: 6608 return list[str](self._Entity.GetDashboardTags(companyName)) 6609 6610 def GenerateSolverSizingInputFile(self, inputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None) -> str: 6611 zonesSet = HashSet[int]() 6612 if zones is not None: 6613 for thing in zones: 6614 if thing is not None: 6615 zonesSet.Add(thing) 6616 sectionCutsSet = HashSet[int]() 6617 if sectionCuts is not None: 6618 for thing in sectionCuts: 6619 if thing is not None: 6620 sectionCutsSet.Add(thing) 6621 panelSegmentsSet = HashSet[int]() 6622 if panelSegments is not None: 6623 for thing in panelSegments: 6624 if thing is not None: 6625 panelSegmentsSet.Add(thing) 6626 return self._Entity.GenerateSolverSizingInputFile(inputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet) 6627 6628 def GenerateSolverAnalysisInputFile(self, inputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None) -> str: 6629 zonesSet = HashSet[int]() 6630 if zones is not None: 6631 for thing in zones: 6632 if thing is not None: 6633 zonesSet.Add(thing) 6634 sectionCutsSet = HashSet[int]() 6635 if sectionCuts is not None: 6636 for thing in sectionCuts: 6637 if thing is not None: 6638 sectionCutsSet.Add(thing) 6639 panelSegmentsSet = HashSet[int]() 6640 if panelSegments is not None: 6641 for thing in panelSegments: 6642 if thing is not None: 6643 panelSegmentsSet.Add(thing) 6644 return self._Entity.GenerateSolverAnalysisInputFile(inputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet) 6645 6646 def FullRunSolverSizing(self, inputFile: str = None, outputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None, nThreads: int = None) -> bool: 6647 zonesSet = HashSet[int]() 6648 if zones is not None: 6649 for thing in zones: 6650 if thing is not None: 6651 zonesSet.Add(thing) 6652 sectionCutsSet = HashSet[int]() 6653 if sectionCuts is not None: 6654 for thing in sectionCuts: 6655 if thing is not None: 6656 sectionCutsSet.Add(thing) 6657 panelSegmentsSet = HashSet[int]() 6658 if panelSegments is not None: 6659 for thing in panelSegments: 6660 if thing is not None: 6661 panelSegmentsSet.Add(thing) 6662 return self._Entity.FullRunSolverSizing(inputFile, outputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet, nThreads) 6663 6664 def FullRunSolverAnalysis(self, inputFile: str = None, outputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None, nThreads: int = None) -> bool: 6665 zonesSet = HashSet[int]() 6666 if zones is not None: 6667 for thing in zones: 6668 if thing is not None: 6669 zonesSet.Add(thing) 6670 sectionCutsSet = HashSet[int]() 6671 if sectionCuts is not None: 6672 for thing in sectionCuts: 6673 if thing is not None: 6674 sectionCutsSet.Add(thing) 6675 panelSegmentsSet = HashSet[int]() 6676 if panelSegments is not None: 6677 for thing in panelSegments: 6678 if thing is not None: 6679 panelSegmentsSet.Add(thing) 6680 return self._Entity.FullRunSolverAnalysis(inputFile, outputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet, nThreads) 6681 6682 def RunSolver(self, inputFile: str, outputFile: str = None, nThreads: int = None) -> bool: 6683 return self._Entity.RunSolver(inputFile, outputFile, nThreads) 6684 6685 def Dispose(self) -> None: 6686 return self._Entity.Dispose() 6687 6688 def ImportFem(self) -> None: 6689 return self._Entity.ImportFem() 6690 6691 def ImportFeaResults(self, alwaysImport: bool = False) -> str: 6692 return self._Entity.ImportFeaResults(alwaysImport) 6693 6694 def SetFemFormat(self, femFormat: types.ProjectModelFormat) -> None: 6695 return self._Entity.SetFemFormat(_types.ProjectModelFormat(femFormat.value)) 6696 6697 def SetFemUnits(self, femForceId: DbForceUnit, femLengthId: DbLengthUnit, femMassId: DbMassUnit, femTemperatureId: DbTemperatureUnit) -> SetUnitsStatus: 6698 return SetUnitsStatus[self._Entity.SetFemUnits(_api.DbForceUnit(femForceId.value), _api.DbLengthUnit(femLengthId.value), _api.DbMassUnit(femMassId.value), _api.DbTemperatureUnit(femTemperatureId.value)).ToString()] 6699 6700 def SizeJoints(self, joints: list[Joint] = None) -> tuple[bool, str, set[int]]: 6701 jointsList = List[_api.Joint]() 6702 if joints is not None: 6703 for thing in joints: 6704 if thing is not None: 6705 jointsList.Add(thing._Entity) 6706 result = self._Entity.SizeJoints(joints if joints is None else jointsList) 6707 return tuple([result.Item1, result.Item2, result.Item3]) 6708 6709 @overload 6710 def AnalyzeZones(self, zones: list[Zone] = None) -> types.SimpleStatus: ... 6711 6712 @overload 6713 def AnalyzeZones(self, zoneIds: list[int]) -> types.SimpleStatus: ... 6714 6715 @overload 6716 def SizeZones(self, zones: list[Zone] = None) -> types.SimpleStatus: ... 6717 6718 @overload 6719 def SizeZones(self, zoneIds: list[int]) -> types.SimpleStatus: ... 6720 6721 def CreateNonFeaZone(self, category: types.FamilyCategory, name: str = None) -> Zone: 6722 result = self._Entity.CreateNonFeaZone(_types.FamilyCategory(category.value), name) 6723 thisClass = type(result).__name__ 6724 givenClass = Zone 6725 for subclass in Zone.__subclasses__(): 6726 if subclass.__name__ == thisClass: 6727 givenClass = subclass 6728 return givenClass(result) 6729 6730 def ReturnToUnusedFem(self, zoneNumbers: list[int] = None, jointIds: set[int] = None) -> None: 6731 zoneNumbersList = MakeCSharpIntList(zoneNumbers) 6732 jointIdsSet = HashSet[int]() 6733 if jointIds is not None: 6734 for thing in jointIds: 6735 if thing is not None: 6736 jointIdsSet.Add(thing) 6737 return self._Entity.ReturnToUnusedFem(zoneNumbers if zoneNumbers is None else zoneNumbersList, jointIds if jointIds is None else jointIdsSet) 6738 6739 def UnimportFemAsync(self) -> Task: 6740 return Task(self._Entity.UnimportFemAsync()) 6741 6742 def ExportFem(self, destinationFolder: str) -> None: 6743 return self._Entity.ExportFem(destinationFolder) 6744 6745 def ImportCad(self, filePath: str) -> None: 6746 return self._Entity.ImportCad(filePath) 6747 6748 @overload 6749 def ExportCad(self, filePath: str) -> None: ... 6750 6751 @overload 6752 def ExportCad(self, cadIds: tuple[int], filePath: str) -> None: ... 6753 6754 def RegeneratePfem(self) -> None: 6755 ''' 6756 Regenerates and displays the preview FEM. If running a script outside of the Script Runner, 6757 do not call this method 6758 ''' 6759 return self._Entity.RegeneratePfem() 6760 6761 def AnalyzeZones(self, item1 = None) -> types.SimpleStatus: 6762 if isinstance(item1, list) and len(item1) > 0 and isinstance(item1[0], Zone): 6763 zonesList = List[_api.Zone]() 6764 if item1 is not None: 6765 for thing in item1: 6766 if thing is not None: 6767 zonesList.Add(thing._Entity) 6768 return types.SimpleStatus(self._Entity.AnalyzeZones(item1 if item1 is None else zonesList)) 6769 6770 if isinstance(item1, list) and len(item1) > 0 and isinstance(item1[0], int): 6771 zoneIdsList = MakeCSharpIntList(item1) 6772 return types.SimpleStatus(self._Entity.AnalyzeZones(zoneIdsList)) 6773 6774 return self._Entity.AnalyzeZones(item1) 6775 6776 def SizeZones(self, item1 = None) -> types.SimpleStatus: 6777 if isinstance(item1, list) and len(item1) > 0 and isinstance(item1[0], Zone): 6778 zonesList = List[_api.Zone]() 6779 if item1 is not None: 6780 for thing in item1: 6781 if thing is not None: 6782 zonesList.Add(thing._Entity) 6783 return types.SimpleStatus(self._Entity.SizeZones(item1 if item1 is None else zonesList)) 6784 6785 if isinstance(item1, list) and len(item1) > 0 and isinstance(item1[0], int): 6786 zoneIdsList = MakeCSharpIntList(item1) 6787 return types.SimpleStatus(self._Entity.SizeZones(zoneIdsList)) 6788 6789 return self._Entity.SizeZones(item1) 6790 6791 def ExportCad(self, item1 = None, item2 = None) -> None: 6792 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int) and isinstance(item2, str): 6793 cadIdsList = MakeCSharpIntList(item1) 6794 cadIdsEnumerable = IEnumerable(cadIdsList) 6795 return self._Entity.ExportCad(cadIdsEnumerable, item2) 6796 6797 if isinstance(item1, str): 6798 return self._Entity.ExportCad(item1) 6799 6800 return self._Entity.ExportCad(item1, item2) 6801 6802 6803class ProjectInfo(IdNameEntityRenameable): 6804 def __init__(self, projectInfo: _api.ProjectInfo): 6805 self._Entity = projectInfo 6806 6807 6808class FailureModeCategoryCol(IdNameEntityCol[FailureModeCategory]): 6809 def __init__(self, failureModeCategoryCol: _api.FailureModeCategoryCol): 6810 self._Entity = failureModeCategoryCol 6811 self._CollectedClass = FailureModeCategory 6812 6813 @property 6814 def FailureModeCategoryColList(self) -> tuple[FailureModeCategory]: 6815 return tuple([FailureModeCategory(failureModeCategoryCol) for failureModeCategoryCol in self._Entity]) 6816 6817 @overload 6818 def Get(self, name: str) -> FailureModeCategory: ... 6819 6820 @overload 6821 def Get(self, id: int) -> FailureModeCategory: ... 6822 6823 def Get(self, item1 = None) -> FailureModeCategory: 6824 if isinstance(item1, str): 6825 return FailureModeCategory(super().Get(item1)) 6826 6827 if isinstance(item1, int): 6828 return FailureModeCategory(super().Get(item1)) 6829 6830 return self._Entity.Get(item1) 6831 6832 def __getitem__(self, index: int): 6833 return self.FailureModeCategoryColList[index] 6834 6835 def __iter__(self): 6836 yield from self.FailureModeCategoryColList 6837 6838 def __len__(self): 6839 return len(self.FailureModeCategoryColList) 6840 6841 6842class FoamCol(Generic[T]): 6843 def __init__(self, foamCol: _api.FoamCol): 6844 self._Entity = foamCol 6845 6846 @property 6847 def FoamColList(self) -> tuple[Foam]: 6848 return tuple([Foam(foamCol) for foamCol in self._Entity]) 6849 6850 def Count(self) -> int: 6851 return self._Entity.Count() 6852 6853 def Get(self, materialName: str) -> Foam: 6854 return Foam(self._Entity.Get(materialName)) 6855 6856 def Contains(self, materialName: str) -> bool: 6857 return self._Entity.Contains(materialName) 6858 6859 def Create(self, materialFamilyName: str, density: float, newMaterialName: str = None, femId: int = None) -> Foam: 6860 return Foam(self._Entity.Create(materialFamilyName, density, newMaterialName, femId)) 6861 6862 def Copy(self, fmToCopyName: str, newMaterialName: str = None, femId: int = None) -> Foam: 6863 return Foam(self._Entity.Copy(fmToCopyName, newMaterialName, femId)) 6864 6865 def Delete(self, materialName: str) -> bool: 6866 return self._Entity.Delete(materialName) 6867 6868 def __getitem__(self, index: int): 6869 return self.FoamColList[index] 6870 6871 def __iter__(self): 6872 yield from self.FoamColList 6873 6874 def __len__(self): 6875 return len(self.FoamColList) 6876 6877 6878class HoneycombCol(Generic[T]): 6879 def __init__(self, honeycombCol: _api.HoneycombCol): 6880 self._Entity = honeycombCol 6881 6882 @property 6883 def HoneycombColList(self) -> tuple[Honeycomb]: 6884 return tuple([Honeycomb(honeycombCol) for honeycombCol in self._Entity]) 6885 6886 def Count(self) -> int: 6887 return self._Entity.Count() 6888 6889 def Get(self, materialName: str) -> Honeycomb: 6890 return Honeycomb(self._Entity.Get(materialName)) 6891 6892 def Contains(self, materialName: str) -> bool: 6893 return self._Entity.Contains(materialName) 6894 6895 def Create(self, materialFamilyName: str, density: float, newMaterialName: str = None, femId: int = None) -> Honeycomb: 6896 return Honeycomb(self._Entity.Create(materialFamilyName, density, newMaterialName, femId)) 6897 6898 def Copy(self, honeyToCopyName: str, newMaterialName: str = None, femId: int = None) -> Honeycomb: 6899 return Honeycomb(self._Entity.Copy(honeyToCopyName, newMaterialName, femId)) 6900 6901 def Delete(self, materialName: str) -> bool: 6902 return self._Entity.Delete(materialName) 6903 6904 def __getitem__(self, index: int): 6905 return self.HoneycombColList[index] 6906 6907 def __iter__(self): 6908 yield from self.HoneycombColList 6909 6910 def __len__(self): 6911 return len(self.HoneycombColList) 6912 6913 6914class IsotropicCol(Generic[T]): 6915 def __init__(self, isotropicCol: _api.IsotropicCol): 6916 self._Entity = isotropicCol 6917 6918 @property 6919 def IsotropicColList(self) -> tuple[Isotropic]: 6920 return tuple([Isotropic(isotropicCol) for isotropicCol in self._Entity]) 6921 6922 def Count(self) -> int: 6923 return self._Entity.Count() 6924 6925 def Get(self, materialName: str) -> Isotropic: 6926 return Isotropic(self._Entity.Get(materialName)) 6927 6928 def Contains(self, materialName: str) -> bool: 6929 return self._Entity.Contains(materialName) 6930 6931 def Create(self, materialFamilyName: str, density: float, newMaterialName: str = None, femId: int = None) -> Isotropic: 6932 return Isotropic(self._Entity.Create(materialFamilyName, density, newMaterialName, femId)) 6933 6934 def Copy(self, isoToCopyName: str, newMaterialName: str = None, femId: int = None) -> Isotropic: 6935 return Isotropic(self._Entity.Copy(isoToCopyName, newMaterialName, femId)) 6936 6937 def Delete(self, materialName: str) -> bool: 6938 return self._Entity.Delete(materialName) 6939 6940 def __getitem__(self, index: int): 6941 return self.IsotropicColList[index] 6942 6943 def __iter__(self): 6944 yield from self.IsotropicColList 6945 6946 def __len__(self): 6947 return len(self.IsotropicColList) 6948 6949 6950class LaminateFamilyCol(IdNameEntityCol[LaminateFamily]): 6951 def __init__(self, laminateFamilyCol: _api.LaminateFamilyCol): 6952 self._Entity = laminateFamilyCol 6953 self._CollectedClass = LaminateFamily 6954 6955 @property 6956 def LaminateFamilyColList(self) -> tuple[LaminateFamily]: 6957 return tuple([LaminateFamily(laminateFamilyCol) for laminateFamilyCol in self._Entity]) 6958 6959 @overload 6960 def Get(self, name: str) -> LaminateFamily: ... 6961 6962 @overload 6963 def Get(self, id: int) -> LaminateFamily: ... 6964 6965 def Get(self, item1 = None) -> LaminateFamily: 6966 if isinstance(item1, str): 6967 return LaminateFamily(super().Get(item1)) 6968 6969 if isinstance(item1, int): 6970 return LaminateFamily(super().Get(item1)) 6971 6972 return self._Entity.Get(item1) 6973 6974 def __getitem__(self, index: int): 6975 return self.LaminateFamilyColList[index] 6976 6977 def __iter__(self): 6978 yield from self.LaminateFamilyColList 6979 6980 def __len__(self): 6981 return len(self.LaminateFamilyColList) 6982 6983 6984class LaminateCol(Generic[T]): 6985 def __init__(self, laminateCol: _api.LaminateCol): 6986 self._Entity = laminateCol 6987 6988 @property 6989 def LaminateColList(self) -> tuple[Laminate]: 6990 return tuple([Laminate(laminateCol) for laminateCol in self._Entity]) 6991 6992 def Count(self) -> int: 6993 return self._Entity.Count() 6994 6995 def Get(self, laminateName: str) -> LaminateBase: 6996 result = self._Entity.Get(laminateName) 6997 thisClass = type(result).__name__ 6998 givenClass = LaminateBase 6999 for subclass in LaminateBase.__subclasses__(): 7000 if subclass.__name__ == thisClass: 7001 givenClass = subclass 7002 return givenClass(result) 7003 7004 def Contains(self, laminateName: str) -> bool: 7005 return self._Entity.Contains(laminateName) 7006 7007 def CreateLaminate(self, materialFamily: str, laminateName: str = None) -> Laminate: 7008 return Laminate(self._Entity.CreateLaminate(materialFamily, laminateName)) 7009 7010 def CreateStiffenerLaminate(self, materialFamily: str, stiffenerProfile: types.StiffenerProfile, laminateName: str = None) -> StiffenerLaminate: 7011 return StiffenerLaminate(self._Entity.CreateStiffenerLaminate(materialFamily, _types.StiffenerProfile(stiffenerProfile.value), laminateName)) 7012 7013 def Copy(self, laminateToCopyName: str, newLaminateName: str = None) -> LaminateBase: 7014 result = self._Entity.Copy(laminateToCopyName, newLaminateName) 7015 thisClass = type(result).__name__ 7016 givenClass = LaminateBase 7017 for subclass in LaminateBase.__subclasses__(): 7018 if subclass.__name__ == thisClass: 7019 givenClass = subclass 7020 return givenClass(result) 7021 7022 def Delete(self, name: str) -> bool: 7023 return self._Entity.Delete(name) 7024 7025 def GetLaminate(self, name: str) -> Laminate: 7026 return Laminate(self._Entity.GetLaminate(name)) 7027 7028 def GetStiffenerLaminate(self, name: str) -> StiffenerLaminate: 7029 return StiffenerLaminate(self._Entity.GetStiffenerLaminate(name)) 7030 7031 def __getitem__(self, index: int): 7032 return self.LaminateColList[index] 7033 7034 def __iter__(self): 7035 yield from self.LaminateColList 7036 7037 def __len__(self): 7038 return len(self.LaminateColList) 7039 7040 7041class OrthotropicCol(Generic[T]): 7042 def __init__(self, orthotropicCol: _api.OrthotropicCol): 7043 self._Entity = orthotropicCol 7044 7045 @property 7046 def OrthotropicColList(self) -> tuple[Orthotropic]: 7047 return tuple([Orthotropic(orthotropicCol) for orthotropicCol in self._Entity]) 7048 7049 def Count(self) -> int: 7050 return self._Entity.Count() 7051 7052 def Get(self, materialName: str) -> Orthotropic: 7053 return Orthotropic(self._Entity.Get(materialName)) 7054 7055 def Contains(self, materialName: str) -> bool: 7056 return self._Entity.Contains(materialName) 7057 7058 def Create(self, materialFamilyName: str, thickness: float, density: float, newMaterialName: str = None, femId: int = None) -> Orthotropic: 7059 return Orthotropic(self._Entity.Create(materialFamilyName, thickness, density, newMaterialName, femId)) 7060 7061 def Copy(self, orthoToCopyName: str, newMaterialName: str = None, femId: int = None) -> Orthotropic: 7062 return Orthotropic(self._Entity.Copy(orthoToCopyName, newMaterialName, femId)) 7063 7064 def Delete(self, materialName: str) -> bool: 7065 return self._Entity.Delete(materialName) 7066 7067 def __getitem__(self, index: int): 7068 return self.OrthotropicColList[index] 7069 7070 def __iter__(self): 7071 yield from self.OrthotropicColList 7072 7073 def __len__(self): 7074 return len(self.OrthotropicColList) 7075 7076 7077class PluginPackageCol(IdNameEntityCol[PluginPackage]): 7078 def __init__(self, pluginPackageCol: _api.PluginPackageCol): 7079 self._Entity = pluginPackageCol 7080 self._CollectedClass = PluginPackage 7081 7082 @property 7083 def PluginPackageColList(self) -> tuple[PluginPackage]: 7084 return tuple([PluginPackage(pluginPackageCol) for pluginPackageCol in self._Entity]) 7085 7086 def AddPluginPackage(self, path: str) -> PluginPackage: 7087 return PluginPackage(self._Entity.AddPluginPackage(path)) 7088 7089 @overload 7090 def RemovePluginPackage(self, name: str) -> bool: ... 7091 7092 @overload 7093 def RemovePluginPackage(self, id: int) -> bool: ... 7094 7095 def ClearAllPluginPackages(self) -> None: 7096 ''' 7097 Clears all packages out of the database 7098 ''' 7099 return self._Entity.ClearAllPluginPackages() 7100 7101 def GetPluginPackages(self) -> list[PluginPackage]: 7102 ''' 7103 Gets a list of package info 7104 Includes name, id, file path, version, description, and modification date 7105 ''' 7106 return [PluginPackage(pluginPackage) for pluginPackage in self._Entity.GetPluginPackages()] 7107 7108 @overload 7109 def Get(self, name: str) -> PluginPackage: ... 7110 7111 @overload 7112 def Get(self, id: int) -> PluginPackage: ... 7113 7114 def RemovePluginPackage(self, item1 = None) -> bool: 7115 if isinstance(item1, str): 7116 return self._Entity.RemovePluginPackage(item1) 7117 7118 if isinstance(item1, int): 7119 return self._Entity.RemovePluginPackage(item1) 7120 7121 return self._Entity.RemovePluginPackage(item1) 7122 7123 def Get(self, item1 = None) -> PluginPackage: 7124 if isinstance(item1, str): 7125 return PluginPackage(super().Get(item1)) 7126 7127 if isinstance(item1, int): 7128 return PluginPackage(super().Get(item1)) 7129 7130 return self._Entity.Get(item1) 7131 7132 def __getitem__(self, index: int): 7133 return self.PluginPackageColList[index] 7134 7135 def __iter__(self): 7136 yield from self.PluginPackageColList 7137 7138 def __len__(self): 7139 return len(self.PluginPackageColList) 7140 7141 7142class ProjectInfoCol(IdNameEntityCol[ProjectInfo]): 7143 def __init__(self, projectInfoCol: _api.ProjectInfoCol): 7144 self._Entity = projectInfoCol 7145 self._CollectedClass = ProjectInfo 7146 7147 @property 7148 def ProjectInfoColList(self) -> tuple[ProjectInfo]: 7149 return tuple([ProjectInfo(projectInfoCol) for projectInfoCol in self._Entity]) 7150 7151 @overload 7152 def Get(self, name: str) -> ProjectInfo: ... 7153 7154 @overload 7155 def Get(self, id: int) -> ProjectInfo: ... 7156 7157 def Get(self, item1 = None) -> ProjectInfo: 7158 if isinstance(item1, str): 7159 return ProjectInfo(super().Get(item1)) 7160 7161 if isinstance(item1, int): 7162 return ProjectInfo(super().Get(item1)) 7163 7164 return self._Entity.Get(item1) 7165 7166 def __getitem__(self, index: int): 7167 return self.ProjectInfoColList[index] 7168 7169 def __iter__(self): 7170 yield from self.ProjectInfoColList 7171 7172 def __len__(self): 7173 return len(self.ProjectInfoColList) 7174 7175 7176class Application: 7177 ''' 7178 HyperX scripting application. 7179 This API is not guaranteed to be thread-safe. 7180 Calls into a single application instance or its descendents are not safe to be called concurrently. 7181 7182 However, it is safe enough for integration testing to have multiple 7183 application instances with a single process. 7184 ''' 7185 def __init__(self, application: _api.Application): 7186 self._Entity = application 7187 7188 @property 7189 def CompilationDate(self) -> str: 7190 return self._Entity.CompilationDate 7191 7192 @property 7193 def DatabasePath(self) -> str: 7194 return self._Entity.DatabasePath 7195 7196 @property 7197 def ActiveProject(self) -> Project: 7198 ''' 7199 Represents a HyperX project within a database. 7200 ''' 7201 result = self._Entity.ActiveProject 7202 return Project(result) if result is not None else None 7203 7204 @property 7205 def UiRunnerMode(self) -> bool: 7206 return self._Entity.UiRunnerMode 7207 7208 @property 7209 def Version(self) -> str: 7210 return self._Entity.Version 7211 7212 @property 7213 def FailureModeCategories(self) -> FailureModeCategoryCol: 7214 result = self._Entity.FailureModeCategories 7215 return FailureModeCategoryCol(result) if result is not None else None 7216 7217 @property 7218 def FailureModes(self) -> FailureModeCol: 7219 result = self._Entity.FailureModes 7220 return FailureModeCol(result) if result is not None else None 7221 7222 @property 7223 def Packages(self) -> PluginPackageCol: 7224 result = self._Entity.Packages 7225 return PluginPackageCol(result) if result is not None else None 7226 7227 @property 7228 def Foams(self) -> FoamCol: 7229 ''' 7230 Contains a set of all foam materials in a database. 7231 ''' 7232 result = self._Entity.Foams 7233 return FoamCol(result) if result is not None else None 7234 7235 @property 7236 def Honeycombs(self) -> HoneycombCol: 7237 ''' 7238 Contains a set of all honeycomb materials in a database. 7239 ''' 7240 result = self._Entity.Honeycombs 7241 return HoneycombCol(result) if result is not None else None 7242 7243 @property 7244 def Isotropics(self) -> IsotropicCol: 7245 ''' 7246 Contains a set of all isotropic materials in a database. 7247 ''' 7248 result = self._Entity.Isotropics 7249 return IsotropicCol(result) if result is not None else None 7250 7251 @property 7252 def Laminates(self) -> LaminateCol: 7253 result = self._Entity.Laminates 7254 return LaminateCol(result) if result is not None else None 7255 7256 @property 7257 def LaminateFamilies(self) -> LaminateFamilyCol: 7258 result = self._Entity.LaminateFamilies 7259 return LaminateFamilyCol(result) if result is not None else None 7260 7261 @property 7262 def AnalysisProperties(self) -> AnalysisPropertyCol: 7263 result = self._Entity.AnalysisProperties 7264 return AnalysisPropertyCol(result) if result is not None else None 7265 7266 @property 7267 def DesignProperties(self) -> DesignPropertyCol: 7268 result = self._Entity.DesignProperties 7269 return DesignPropertyCol(result) if result is not None else None 7270 7271 @property 7272 def LoadProperties(self) -> LoadPropertyCol: 7273 result = self._Entity.LoadProperties 7274 return LoadPropertyCol(result) if result is not None else None 7275 7276 @property 7277 def Orthotropics(self) -> OrthotropicCol: 7278 ''' 7279 Contains a set of all orthotropic materials in a database. 7280 ''' 7281 result = self._Entity.Orthotropics 7282 return OrthotropicCol(result) if result is not None else None 7283 7284 @property 7285 def ProjectInfos(self) -> ProjectInfoCol: 7286 ''' 7287 Contains a set of all projects in a database. 7288 ''' 7289 result = self._Entity.ProjectInfos 7290 return ProjectInfoCol(result) if result is not None else None 7291 7292 @property 7293 def UserName(self) -> str: 7294 return self._Entity.UserName 7295 7296 @UserName.setter 7297 def UserName(self, value: str) -> None: 7298 self._Entity.UserName = value 7299 7300 def CloseDatabase(self, delay: int = 0) -> None: 7301 return self._Entity.CloseDatabase(delay) 7302 7303 def CopyProject(self, projectId: int, newName: str = None, copyDesignProperties: bool = True, copyAnalysisProperties: bool = True, copyLoadProperties: bool = True, copyWorkingFolder: bool = True) -> ProjectInfo: 7304 return ProjectInfo(self._Entity.CopyProject(projectId, newName, copyDesignProperties, copyAnalysisProperties, copyLoadProperties, copyWorkingFolder)) 7305 7306 def CreateDatabaseFromTemplate(self, templateName: str, newPath: str) -> None: 7307 return self._Entity.CreateDatabaseFromTemplate(templateName, newPath) 7308 7309 def CreateProject(self, projectName: str = None) -> ProjectInfo: 7310 return ProjectInfo(self._Entity.CreateProject(projectName)) 7311 7312 def DeleteProject(self, projectName: str) -> ProjectDeletionStatus: 7313 return ProjectDeletionStatus[self._Entity.DeleteProject(projectName).ToString()] 7314 7315 def Dispose(self) -> None: 7316 ''' 7317 Dispose of the application. Should be explicitly called after the application 7318 is no longer needed unless the application is wrapped with a using clause. 7319 ''' 7320 return self._Entity.Dispose() 7321 7322 def GetAnalyses(self) -> dict[int, AnalysisDefinition]: 7323 ''' 7324 Get all Analysis Definitions in the database. 7325 ''' 7326 return dict[int, AnalysisDefinition](self._Entity.GetAnalyses()) 7327 7328 def Login(self, userName: str, password: str = "") -> None: 7329 return self._Entity.Login(userName, password) 7330 7331 def Migrate(self, databasePath: str) -> str: 7332 return self._Entity.Migrate(databasePath) 7333 7334 def CheckDatabaseIsUpToDate(self, databasePath: str) -> bool: 7335 return self._Entity.CheckDatabaseIsUpToDate(databasePath) 7336 7337 def OpenDatabase(self, databasePath: str) -> None: 7338 return self._Entity.OpenDatabase(databasePath) 7339 7340 def SelectProject(self, projectName: str) -> Project: 7341 return Project(self._Entity.SelectProject(projectName)) 7342 7343 7344class JointDesignProperty(DesignProperty): 7345 def __init__(self, jointDesignProperty: _api.JointDesignProperty): 7346 self._Entity = jointDesignProperty 7347 7348 7349class SizingMaterial(IdEntity): 7350 def __init__(self, sizingMaterial: _api.SizingMaterial): 7351 self._Entity = sizingMaterial 7352 7353 @property 7354 def MaterialId(self) -> int: 7355 return self._Entity.MaterialId 7356 7357 @property 7358 def MaterialType(self) -> types.MaterialType: 7359 ''' 7360 Represents a material's type. 7361 ''' 7362 return types.MaterialType[self._Entity.MaterialType.ToString()] 7363 7364 7365class SizingMaterialCol(IdEntityCol[SizingMaterial]): 7366 def __init__(self, sizingMaterialCol: _api.SizingMaterialCol): 7367 self._Entity = sizingMaterialCol 7368 self._CollectedClass = SizingMaterial 7369 7370 @property 7371 def SizingMaterialColList(self) -> tuple[SizingMaterial]: 7372 return tuple([SizingMaterial(sizingMaterialCol) for sizingMaterialCol in self._Entity]) 7373 7374 @overload 7375 def Get(self, name: str) -> SizingMaterial: ... 7376 7377 @overload 7378 def Contains(self, name: str) -> bool: ... 7379 7380 @overload 7381 def AddSizingMaterial(self, materialId: int) -> bool: ... 7382 7383 @overload 7384 def AddSizingMaterial(self, name: str) -> bool: ... 7385 7386 @overload 7387 def RemoveSizingMaterial(self, materialId: int) -> bool: ... 7388 7389 @overload 7390 def RemoveSizingMaterial(self, name: str) -> bool: ... 7391 7392 @overload 7393 def Contains(self, id: int) -> bool: ... 7394 7395 @overload 7396 def Get(self, id: int) -> SizingMaterial: ... 7397 7398 def Get(self, item1 = None) -> SizingMaterial: 7399 if isinstance(item1, str): 7400 return SizingMaterial(self._Entity.Get(item1)) 7401 7402 if isinstance(item1, int): 7403 return SizingMaterial(super().Get(item1)) 7404 7405 return self._Entity.Get(item1) 7406 7407 def Contains(self, item1 = None) -> bool: 7408 if isinstance(item1, str): 7409 return self._Entity.Contains(item1) 7410 7411 if isinstance(item1, int): 7412 return bool(super().Contains(item1)) 7413 7414 return self._Entity.Contains(item1) 7415 7416 def AddSizingMaterial(self, item1 = None) -> bool: 7417 if isinstance(item1, int): 7418 return self._Entity.AddSizingMaterial(item1) 7419 7420 if isinstance(item1, str): 7421 return self._Entity.AddSizingMaterial(item1) 7422 7423 return self._Entity.AddSizingMaterial(item1) 7424 7425 def RemoveSizingMaterial(self, item1 = None) -> bool: 7426 if isinstance(item1, int): 7427 return self._Entity.RemoveSizingMaterial(item1) 7428 7429 if isinstance(item1, str): 7430 return self._Entity.RemoveSizingMaterial(item1) 7431 7432 return self._Entity.RemoveSizingMaterial(item1) 7433 7434 def __getitem__(self, index: int): 7435 return self.SizingMaterialColList[index] 7436 7437 def __iter__(self): 7438 yield from self.SizingMaterialColList 7439 7440 def __len__(self): 7441 return len(self.SizingMaterialColList) 7442 7443 7444class ZoneOverride(IdEntity): 7445 def __init__(self, zoneOverride: _api.ZoneOverride): 7446 self._Entity = zoneOverride 7447 7448 @property 7449 def AllowMaterials(self) -> bool: 7450 return self._Entity.AllowMaterials 7451 7452 @property 7453 def ProjectId(self) -> int: 7454 return self._Entity.ProjectId 7455 7456 @property 7457 def DesignId(self) -> int: 7458 return self._Entity.DesignId 7459 7460 @property 7461 def FamilyId(self) -> types.BeamPanelFamily: 7462 return types.BeamPanelFamily[self._Entity.FamilyId.ToString()] 7463 7464 @property 7465 def ConceptId(self) -> int: 7466 return self._Entity.ConceptId 7467 7468 @property 7469 def VariableId(self) -> int: 7470 return self._Entity.VariableId 7471 7472 @property 7473 def MinBound(self) -> float: 7474 return self._Entity.MinBound 7475 7476 @property 7477 def MaxBound(self) -> float: 7478 return self._Entity.MaxBound 7479 7480 @property 7481 def StepSize(self) -> float: 7482 return self._Entity.StepSize 7483 7484 @property 7485 def MinPlies(self) -> int: 7486 return self._Entity.MinPlies 7487 7488 @property 7489 def MaxPlies(self) -> int: 7490 return self._Entity.MaxPlies 7491 7492 @property 7493 def PlyStepSize(self) -> int: 7494 return self._Entity.PlyStepSize 7495 7496 @property 7497 def InputMode(self) -> types.VariableInputMode: 7498 return types.VariableInputMode[self._Entity.InputMode.ToString()] 7499 7500 @property 7501 def SizingMaterials(self) -> SizingMaterialCol: 7502 result = self._Entity.SizingMaterials 7503 return SizingMaterialCol(result) if result is not None else None 7504 7505 @property 7506 def AnalysisValue(self) -> float: 7507 return self._Entity.AnalysisValue 7508 7509 @property 7510 def AnalysisMaterial(self) -> str: 7511 return self._Entity.AnalysisMaterial 7512 7513 @property 7514 def AnalysisMaterialType(self) -> types.MaterialType: 7515 return types.MaterialType[self._Entity.AnalysisMaterialType.ToString()] 7516 7517 @MinBound.setter 7518 def MinBound(self, value: float) -> None: 7519 self._Entity.MinBound = value 7520 7521 @MaxBound.setter 7522 def MaxBound(self, value: float) -> None: 7523 self._Entity.MaxBound = value 7524 7525 @StepSize.setter 7526 def StepSize(self, value: float) -> None: 7527 self._Entity.StepSize = value 7528 7529 @MinPlies.setter 7530 def MinPlies(self, value: int) -> None: 7531 self._Entity.MinPlies = value 7532 7533 @MaxPlies.setter 7534 def MaxPlies(self, value: int) -> None: 7535 self._Entity.MaxPlies = value 7536 7537 @PlyStepSize.setter 7538 def PlyStepSize(self, value: int) -> None: 7539 self._Entity.PlyStepSize = value 7540 7541 @AnalysisValue.setter 7542 def AnalysisValue(self, value: float) -> None: 7543 self._Entity.AnalysisValue = value 7544 7545 @AnalysisMaterial.setter 7546 def AnalysisMaterial(self, value: str) -> None: 7547 self._Entity.AnalysisMaterial = value 7548 7549 7550class ToolingConstraint(IdNameEntity): 7551 ''' 7552 Tooling constraints are a feature of Design Properties for Zones. 7553 ''' 7554 def __init__(self, toolingConstraint: _api.ToolingConstraint): 7555 self._Entity = toolingConstraint 7556 7557 @property 7558 def ConstraintMax(self) -> float: 7559 return self._Entity.ConstraintMax 7560 7561 @property 7562 def ConstraintMin(self) -> float: 7563 return self._Entity.ConstraintMin 7564 7565 @property 7566 def ConstraintValue(self) -> float: 7567 return self._Entity.ConstraintValue 7568 7569 @property 7570 def ToolingSelectionType(self) -> types.ToolingSelectionType: 7571 ''' 7572 Defines which selection a given tooling constraint is currently set to. 7573 ''' 7574 return types.ToolingSelectionType[self._Entity.ToolingSelectionType.ToString()] 7575 7576 def SetToAnyValue(self) -> None: 7577 return self._Entity.SetToAnyValue() 7578 7579 def SetToInequality(self, value: float) -> None: 7580 return self._Entity.SetToInequality(value) 7581 7582 def SetToRange(self, min: float, max: float) -> None: 7583 return self._Entity.SetToRange(min, max) 7584 7585 def SetToValue(self, value: float) -> None: 7586 return self._Entity.SetToValue(value) 7587 7588 7589class ZoneOverrideCol(IdEntityCol[ZoneOverride]): 7590 def __init__(self, zoneOverrideCol: _api.ZoneOverrideCol): 7591 self._Entity = zoneOverrideCol 7592 self._CollectedClass = ZoneOverride 7593 7594 @property 7595 def ZoneOverrideColList(self) -> tuple[ZoneOverride]: 7596 return tuple([ZoneOverride(zoneOverrideCol) for zoneOverrideCol in self._Entity]) 7597 7598 def Get(self, zoneNumber: int) -> ZoneOverride: 7599 return ZoneOverride(self._Entity.Get(zoneNumber)) 7600 7601 def __getitem__(self, index: int): 7602 return self.ZoneOverrideColList[index] 7603 7604 def __iter__(self): 7605 yield from self.ZoneOverrideColList 7606 7607 def __len__(self): 7608 return len(self.ZoneOverrideColList) 7609 7610 7611class DesignVariable(IdEntity): 7612 ''' 7613 Holds design variable data. 7614 Min, max, steps, materials. 7615 ''' 7616 def __init__(self, designVariable: _api.DesignVariable): 7617 self._Entity = designVariable 7618 7619 @property 7620 def VariableParameter(self) -> types.VariableParameter: 7621 return types.VariableParameter[self._Entity.VariableParameter.ToString()] 7622 7623 @property 7624 def AllowMaterials(self) -> bool: 7625 return self._Entity.AllowMaterials 7626 7627 @property 7628 def Max(self) -> float: 7629 return self._Entity.Max 7630 7631 @property 7632 def Min(self) -> float: 7633 return self._Entity.Min 7634 7635 @property 7636 def Name(self) -> str: 7637 return self._Entity.Name 7638 7639 @property 7640 def StepSize(self) -> float: 7641 return self._Entity.StepSize 7642 7643 @property 7644 def UseAnalysis(self) -> bool: 7645 return self._Entity.UseAnalysis 7646 7647 @property 7648 def AnalysisMaterial(self) -> str: 7649 return self._Entity.AnalysisMaterial 7650 7651 @property 7652 def AnalysisMaterialType(self) -> types.MaterialType: 7653 return types.MaterialType[self._Entity.AnalysisMaterialType.ToString()] 7654 7655 @property 7656 def SizingMaterialType(self) -> types.MaterialType: 7657 return types.MaterialType[self._Entity.SizingMaterialType.ToString()] 7658 7659 @property 7660 def AnalysisValue(self) -> float: 7661 return self._Entity.AnalysisValue 7662 7663 @property 7664 def Overrides(self) -> ZoneOverrideCol: 7665 result = self._Entity.Overrides 7666 return ZoneOverrideCol(result) if result is not None else None 7667 7668 @Max.setter 7669 def Max(self, value: float) -> None: 7670 self._Entity.Max = value 7671 7672 @Min.setter 7673 def Min(self, value: float) -> None: 7674 self._Entity.Min = value 7675 7676 @StepSize.setter 7677 def StepSize(self, value: float) -> None: 7678 self._Entity.StepSize = value 7679 7680 @UseAnalysis.setter 7681 def UseAnalysis(self, value: bool) -> None: 7682 self._Entity.UseAnalysis = value 7683 7684 @AnalysisMaterial.setter 7685 def AnalysisMaterial(self, value: str) -> None: 7686 self._Entity.AnalysisMaterial = value 7687 7688 @AnalysisValue.setter 7689 def AnalysisValue(self, value: float) -> None: 7690 self._Entity.AnalysisValue = value 7691 7692 @overload 7693 def AddMaterials(self, materialIds: set[int]) -> None: ... 7694 7695 @overload 7696 def AddMaterials(self, materialNames: set[str]) -> None: ... 7697 7698 def GetSizingMaterials(self) -> list[int]: 7699 ''' 7700 Get a list of materials used for sizing, if they exist. 7701 ''' 7702 return [int32 for int32 in self._Entity.GetSizingMaterials()] 7703 7704 def RemoveSizingMaterials(self, materialIds: tuple[int] = None) -> None: 7705 materialIdsList = MakeCSharpIntList(materialIds) 7706 materialIdsEnumerable = IEnumerable(materialIdsList) 7707 return self._Entity.RemoveSizingMaterials(materialIds if materialIds is None else materialIdsEnumerable) 7708 7709 def GetAnalysisMaterial(self) -> int: 7710 ''' 7711 Get the material used for analysis, if it exists. 7712 ''' 7713 return self._Entity.GetAnalysisMaterial() 7714 7715 def RemoveAnalysisMaterial(self) -> None: 7716 ''' 7717 Remove the analysis material assigned to this variable. 7718 ''' 7719 return self._Entity.RemoveAnalysisMaterial() 7720 7721 def AddMaterials(self, item1 = None) -> None: 7722 if isinstance(item1, set): 7723 materialIdsSet = HashSet[int]() 7724 if item1 is not None: 7725 for thing in item1: 7726 if thing is not None: 7727 materialIdsSet.Add(thing) 7728 return self._Entity.AddMaterials(materialIdsSet) 7729 7730 if isinstance(item1, set): 7731 materialNamesSet = HashSet[str]() 7732 if item1 is not None: 7733 for thing in item1: 7734 if thing is not None: 7735 materialNamesSet.Add(thing) 7736 return self._Entity.AddMaterials(materialNamesSet) 7737 7738 return self._Entity.AddMaterials(item1) 7739 7740 7741class ToolingConstraintCol(IdNameEntityCol[ToolingConstraint]): 7742 def __init__(self, toolingConstraintCol: _api.ToolingConstraintCol): 7743 self._Entity = toolingConstraintCol 7744 self._CollectedClass = ToolingConstraint 7745 7746 @property 7747 def ToolingConstraintColList(self) -> tuple[ToolingConstraint]: 7748 return tuple([ToolingConstraint(toolingConstraintCol) for toolingConstraintCol in self._Entity]) 7749 7750 @overload 7751 def Get(self, name: str) -> ToolingConstraint: ... 7752 7753 @overload 7754 def Get(self, id: int) -> ToolingConstraint: ... 7755 7756 def Get(self, item1 = None) -> ToolingConstraint: 7757 if isinstance(item1, str): 7758 return ToolingConstraint(super().Get(item1)) 7759 7760 if isinstance(item1, int): 7761 return ToolingConstraint(super().Get(item1)) 7762 7763 return self._Entity.Get(item1) 7764 7765 def __getitem__(self, index: int): 7766 return self.ToolingConstraintColList[index] 7767 7768 def __iter__(self): 7769 yield from self.ToolingConstraintColList 7770 7771 def __len__(self): 7772 return len(self.ToolingConstraintColList) 7773 7774 7775class DesignVariableCol(IdEntityCol[DesignVariable]): 7776 def __init__(self, designVariableCol: _api.DesignVariableCol): 7777 self._Entity = designVariableCol 7778 self._CollectedClass = DesignVariable 7779 7780 @property 7781 def DesignVariableColList(self) -> tuple[DesignVariable]: 7782 return tuple([DesignVariable(designVariableCol) for designVariableCol in self._Entity]) 7783 7784 @overload 7785 def Get(self, parameterId: types.VariableParameter) -> DesignVariable: ... 7786 7787 @overload 7788 def Get(self, id: int) -> DesignVariable: ... 7789 7790 def Get(self, item1 = None) -> DesignVariable: 7791 if isinstance(item1, types.VariableParameter): 7792 return DesignVariable(self._Entity.Get(_types.VariableParameter(item1.value))) 7793 7794 if isinstance(item1, int): 7795 return DesignVariable(super().Get(item1)) 7796 7797 return self._Entity.Get(_types.VariableParameter(item1.value)) 7798 7799 def __getitem__(self, index: int): 7800 return self.DesignVariableColList[index] 7801 7802 def __iter__(self): 7803 yield from self.DesignVariableColList 7804 7805 def __len__(self): 7806 return len(self.DesignVariableColList) 7807 7808 7809class ZoneDesignProperty(DesignProperty): 7810 def __init__(self, zoneDesignProperty: _api.ZoneDesignProperty): 7811 self._Entity = zoneDesignProperty 7812 7813 @property 7814 def FamilyId(self) -> types.BeamPanelFamily: 7815 return types.BeamPanelFamily[self._Entity.FamilyId.ToString()] 7816 7817 @property 7818 def ConceptId(self) -> int: 7819 return self._Entity.ConceptId 7820 7821 @property 7822 def FamilyConceptUID(self) -> types.FamilyConceptUID: 7823 return types.FamilyConceptUID[self._Entity.FamilyConceptUID.ToString()] 7824 7825 @property 7826 def ToolingConstraints(self) -> ToolingConstraintCol: 7827 result = self._Entity.ToolingConstraints 7828 return ToolingConstraintCol(result) if result is not None else None 7829 7830 @property 7831 def DesignVariables(self) -> DesignVariableCol: 7832 result = self._Entity.DesignVariables 7833 return DesignVariableCol(result) if result is not None else None 7834 7835 7836class BulkUpdaterBase(ABC): 7837 def __init__(self, bulkUpdaterBase: _api.BulkUpdaterBase): 7838 self._Entity = bulkUpdaterBase 7839 7840 def Update(self, func: Action) -> None: 7841 entityType = self._Entity.GetType().BaseType.GenericTypeArguments[0] 7842 funcAction = Action[entityType](func) 7843 return self._Entity.Update(funcAction) 7844 7845 7846class LoadPropertyUserRowBulkUpdater(BulkUpdaterBase): 7847 def __init__(self, loadPropertyUserRowBulkUpdater: _api.LoadPropertyUserRowBulkUpdater): 7848 self._Entity = loadPropertyUserRowBulkUpdater 7849 7850 7851class LoadPropertyUserRow(IdNameEntity): 7852 def __init__(self, loadPropertyUserRow: _api.LoadPropertyUserRow): 7853 self._Entity = loadPropertyUserRow 7854 7855 @property 7856 def LoadScenarioId(self) -> int: 7857 return self._Entity.LoadScenarioId 7858 7859 @property 7860 def LoadPropertyId(self) -> int: 7861 return self._Entity.LoadPropertyId 7862 7863 @property 7864 def Type(self) -> types.LoadSetType: 7865 return types.LoadSetType[self._Entity.Type.ToString()] 7866 7867 @property 7868 def ReferenceTemperature(self) -> float: 7869 return self._Entity.ReferenceTemperature 7870 7871 @property 7872 def PressureOrTemperature(self) -> float: 7873 return self._Entity.PressureOrTemperature 7874 7875 @property 7876 def LimitFactor(self) -> float: 7877 return self._Entity.LimitFactor 7878 7879 @property 7880 def UltimateFactor(self) -> float: 7881 return self._Entity.UltimateFactor 7882 7883 @ReferenceTemperature.setter 7884 def ReferenceTemperature(self, value: float) -> None: 7885 self._Entity.ReferenceTemperature = value 7886 7887 @PressureOrTemperature.setter 7888 def PressureOrTemperature(self, value: float) -> None: 7889 self._Entity.PressureOrTemperature = value 7890 7891 @LimitFactor.setter 7892 def LimitFactor(self, value: float) -> None: 7893 self._Entity.LimitFactor = value 7894 7895 @UltimateFactor.setter 7896 def UltimateFactor(self, value: float) -> None: 7897 self._Entity.UltimateFactor = value 7898 7899 7900class LoadPropertyUserBeamRow(LoadPropertyUserRow): 7901 def __init__(self, loadPropertyUserBeamRow: _api.LoadPropertyUserBeamRow): 7902 self._Entity = loadPropertyUserBeamRow 7903 7904 @property 7905 def M1A(self) -> float: 7906 return self._Entity.M1A 7907 7908 @property 7909 def M2A(self) -> float: 7910 return self._Entity.M2A 7911 7912 @property 7913 def M1B(self) -> float: 7914 return self._Entity.M1B 7915 7916 @property 7917 def M2B(self) -> float: 7918 return self._Entity.M2B 7919 7920 @property 7921 def V1(self) -> float: 7922 return self._Entity.V1 7923 7924 @property 7925 def V2(self) -> float: 7926 return self._Entity.V2 7927 7928 @property 7929 def Axial(self) -> float: 7930 return self._Entity.Axial 7931 7932 @property 7933 def Torque(self) -> float: 7934 return self._Entity.Torque 7935 7936 @M1A.setter 7937 def M1A(self, value: float) -> None: 7938 self._Entity.M1A = value 7939 7940 @M2A.setter 7941 def M2A(self, value: float) -> None: 7942 self._Entity.M2A = value 7943 7944 @M1B.setter 7945 def M1B(self, value: float) -> None: 7946 self._Entity.M1B = value 7947 7948 @M2B.setter 7949 def M2B(self, value: float) -> None: 7950 self._Entity.M2B = value 7951 7952 @V1.setter 7953 def V1(self, value: float) -> None: 7954 self._Entity.V1 = value 7955 7956 @V2.setter 7957 def V2(self, value: float) -> None: 7958 self._Entity.V2 = value 7959 7960 @Axial.setter 7961 def Axial(self, value: float) -> None: 7962 self._Entity.Axial = value 7963 7964 @Torque.setter 7965 def Torque(self, value: float) -> None: 7966 self._Entity.Torque = value 7967 7968 7969class LoadPropertyUserFeaBeamRow(LoadPropertyUserBeamRow): 7970 def __init__(self, loadPropertyUserFeaBeamRow: _api.LoadPropertyUserFeaBeamRow): 7971 self._Entity = loadPropertyUserFeaBeamRow 7972 7973 def SetName(self, name: str) -> None: 7974 return self._Entity.SetName(name) 7975 7976 7977class LoadPropertyUserFeaBeamRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 7978 def __init__(self, loadPropertyUserFeaBeamRowBulkUpdater: _api.LoadPropertyUserFeaBeamRowBulkUpdater): 7979 self._Entity = loadPropertyUserFeaBeamRowBulkUpdater 7980 7981 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaBeamRow]) -> LoadPropertyUserFeaBeamRowBulkUpdater: 7982 itemsList = List[_api.LoadPropertyUserFeaBeamRow]() 7983 if items is not None: 7984 for thing in items: 7985 if thing is not None: 7986 itemsList.Add(thing._Entity) 7987 return LoadPropertyUserFeaBeamRowBulkUpdater(_api.LoadPropertyUserFeaBeamRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 7988 7989 7990class LoadPropertyUserPanelJointRow(LoadPropertyUserRow): 7991 def __init__(self, loadPropertyUserPanelJointRow: _api.LoadPropertyUserPanelJointRow): 7992 self._Entity = loadPropertyUserPanelJointRow 7993 7994 @property 7995 def Nx(self) -> float: 7996 return self._Entity.Nx 7997 7998 @property 7999 def Ny(self) -> float: 8000 return self._Entity.Ny 8001 8002 @property 8003 def Nxy(self) -> float: 8004 return self._Entity.Nxy 8005 8006 @property 8007 def Mx(self) -> float: 8008 return self._Entity.Mx 8009 8010 @property 8011 def My(self) -> float: 8012 return self._Entity.My 8013 8014 @property 8015 def Mxy(self) -> float: 8016 return self._Entity.Mxy 8017 8018 @property 8019 def Qx(self) -> float: 8020 return self._Entity.Qx 8021 8022 @property 8023 def Qy(self) -> float: 8024 return self._Entity.Qy 8025 8026 @Nx.setter 8027 def Nx(self, value: float) -> None: 8028 self._Entity.Nx = value 8029 8030 @Ny.setter 8031 def Ny(self, value: float) -> None: 8032 self._Entity.Ny = value 8033 8034 @Nxy.setter 8035 def Nxy(self, value: float) -> None: 8036 self._Entity.Nxy = value 8037 8038 @Mx.setter 8039 def Mx(self, value: float) -> None: 8040 self._Entity.Mx = value 8041 8042 @My.setter 8043 def My(self, value: float) -> None: 8044 self._Entity.My = value 8045 8046 @Mxy.setter 8047 def Mxy(self, value: float) -> None: 8048 self._Entity.Mxy = value 8049 8050 @Qx.setter 8051 def Qx(self, value: float) -> None: 8052 self._Entity.Qx = value 8053 8054 @Qy.setter 8055 def Qy(self, value: float) -> None: 8056 self._Entity.Qy = value 8057 8058 8059class LoadPropertyUserFeaJointRow(LoadPropertyUserPanelJointRow): 8060 def __init__(self, loadPropertyUserFeaJointRow: _api.LoadPropertyUserFeaJointRow): 8061 self._Entity = loadPropertyUserFeaJointRow 8062 8063 def SetName(self, name: str) -> None: 8064 return self._Entity.SetName(name) 8065 8066 8067class LoadPropertyUserFeaJointRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8068 def __init__(self, loadPropertyUserFeaJointRowBulkUpdater: _api.LoadPropertyUserFeaJointRowBulkUpdater): 8069 self._Entity = loadPropertyUserFeaJointRowBulkUpdater 8070 8071 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaJointRow]) -> LoadPropertyUserFeaJointRowBulkUpdater: 8072 itemsList = List[_api.LoadPropertyUserFeaJointRow]() 8073 if items is not None: 8074 for thing in items: 8075 if thing is not None: 8076 itemsList.Add(thing._Entity) 8077 return LoadPropertyUserFeaJointRowBulkUpdater(_api.LoadPropertyUserFeaJointRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 8078 8079 8080class LoadPropertyUserFeaPanelRow(LoadPropertyUserPanelJointRow): 8081 def __init__(self, loadPropertyUserFeaPanelRow: _api.LoadPropertyUserFeaPanelRow): 8082 self._Entity = loadPropertyUserFeaPanelRow 8083 8084 def SetName(self, name: str) -> None: 8085 return self._Entity.SetName(name) 8086 8087 8088class LoadPropertyUserFeaPanelRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8089 def __init__(self, loadPropertyUserFeaPanelRowBulkUpdater: _api.LoadPropertyUserFeaPanelRowBulkUpdater): 8090 self._Entity = loadPropertyUserFeaPanelRowBulkUpdater 8091 8092 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaPanelRow]) -> LoadPropertyUserFeaPanelRowBulkUpdater: 8093 itemsList = List[_api.LoadPropertyUserFeaPanelRow]() 8094 if items is not None: 8095 for thing in items: 8096 if thing is not None: 8097 itemsList.Add(thing._Entity) 8098 return LoadPropertyUserFeaPanelRowBulkUpdater(_api.LoadPropertyUserFeaPanelRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 8099 8100 8101class LoadPropertyUserGeneralBeamRow(LoadPropertyUserBeamRow): 8102 def __init__(self, loadPropertyUserGeneralBeamRow: _api.LoadPropertyUserGeneralBeamRow): 8103 self._Entity = loadPropertyUserGeneralBeamRow 8104 8105 @property 8106 def M1A(self) -> float: 8107 return self._Entity.M1A 8108 8109 @property 8110 def M2A(self) -> float: 8111 return self._Entity.M2A 8112 8113 @property 8114 def M1B(self) -> float: 8115 return self._Entity.M1B 8116 8117 @property 8118 def M2B(self) -> float: 8119 return self._Entity.M2B 8120 8121 @property 8122 def V1(self) -> float: 8123 return self._Entity.V1 8124 8125 @property 8126 def V2(self) -> float: 8127 return self._Entity.V2 8128 8129 @property 8130 def Axial(self) -> float: 8131 return self._Entity.Axial 8132 8133 @property 8134 def Torque(self) -> float: 8135 return self._Entity.Torque 8136 8137 @property 8138 def M1AType(self) -> types.BoundaryConditionType: 8139 return types.BoundaryConditionType[self._Entity.M1AType.ToString()] 8140 8141 @property 8142 def M2AType(self) -> types.BoundaryConditionType: 8143 return types.BoundaryConditionType[self._Entity.M2AType.ToString()] 8144 8145 @property 8146 def M1BType(self) -> types.BoundaryConditionType: 8147 return types.BoundaryConditionType[self._Entity.M1BType.ToString()] 8148 8149 @property 8150 def M2BType(self) -> types.BoundaryConditionType: 8151 return types.BoundaryConditionType[self._Entity.M2BType.ToString()] 8152 8153 @property 8154 def V1Type(self) -> types.BoundaryConditionType: 8155 return types.BoundaryConditionType[self._Entity.V1Type.ToString()] 8156 8157 @property 8158 def V2Type(self) -> types.BoundaryConditionType: 8159 return types.BoundaryConditionType[self._Entity.V2Type.ToString()] 8160 8161 @property 8162 def AxialType(self) -> types.BoundaryConditionType: 8163 return types.BoundaryConditionType[self._Entity.AxialType.ToString()] 8164 8165 @property 8166 def TorqueType(self) -> types.BoundaryConditionType: 8167 return types.BoundaryConditionType[self._Entity.TorqueType.ToString()] 8168 8169 @M1A.setter 8170 def M1A(self, value: float) -> None: 8171 self._Entity.M1A = value 8172 8173 @M2A.setter 8174 def M2A(self, value: float) -> None: 8175 self._Entity.M2A = value 8176 8177 @M1B.setter 8178 def M1B(self, value: float) -> None: 8179 self._Entity.M1B = value 8180 8181 @M2B.setter 8182 def M2B(self, value: float) -> None: 8183 self._Entity.M2B = value 8184 8185 @V1.setter 8186 def V1(self, value: float) -> None: 8187 self._Entity.V1 = value 8188 8189 @V2.setter 8190 def V2(self, value: float) -> None: 8191 self._Entity.V2 = value 8192 8193 @Axial.setter 8194 def Axial(self, value: float) -> None: 8195 self._Entity.Axial = value 8196 8197 @Torque.setter 8198 def Torque(self, value: float) -> None: 8199 self._Entity.Torque = value 8200 8201 8202class LoadPropertyUserGeneralBeamRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8203 def __init__(self, loadPropertyUserGeneralBeamRowBulkUpdater: _api.LoadPropertyUserGeneralBeamRowBulkUpdater): 8204 self._Entity = loadPropertyUserGeneralBeamRowBulkUpdater 8205 8206 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserGeneralBeamRow]) -> LoadPropertyUserGeneralBeamRowBulkUpdater: 8207 itemsList = List[_api.LoadPropertyUserGeneralBeamRow]() 8208 if items is not None: 8209 for thing in items: 8210 if thing is not None: 8211 itemsList.Add(thing._Entity) 8212 return LoadPropertyUserGeneralBeamRowBulkUpdater(_api.LoadPropertyUserGeneralBeamRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 8213 8214 8215class LoadPropertyUserGeneralPanelRow(LoadPropertyUserPanelJointRow): 8216 def __init__(self, loadPropertyUserGeneralPanelRow: _api.LoadPropertyUserGeneralPanelRow): 8217 self._Entity = loadPropertyUserGeneralPanelRow 8218 8219 @property 8220 def Nx(self) -> float: 8221 return self._Entity.Nx 8222 8223 @property 8224 def Ny(self) -> float: 8225 return self._Entity.Ny 8226 8227 @property 8228 def Nxy(self) -> float: 8229 return self._Entity.Nxy 8230 8231 @property 8232 def Mx(self) -> float: 8233 return self._Entity.Mx 8234 8235 @property 8236 def My(self) -> float: 8237 return self._Entity.My 8238 8239 @property 8240 def Mxy(self) -> float: 8241 return self._Entity.Mxy 8242 8243 @property 8244 def Qx(self) -> float: 8245 return self._Entity.Qx 8246 8247 @property 8248 def Qy(self) -> float: 8249 return self._Entity.Qy 8250 8251 @property 8252 def NxType(self) -> types.BoundaryConditionType: 8253 return types.BoundaryConditionType[self._Entity.NxType.ToString()] 8254 8255 @property 8256 def NyType(self) -> types.BoundaryConditionType: 8257 return types.BoundaryConditionType[self._Entity.NyType.ToString()] 8258 8259 @property 8260 def NxyType(self) -> types.BoundaryConditionType: 8261 return types.BoundaryConditionType[self._Entity.NxyType.ToString()] 8262 8263 @property 8264 def MxType(self) -> types.BoundaryConditionType: 8265 return types.BoundaryConditionType[self._Entity.MxType.ToString()] 8266 8267 @property 8268 def MyType(self) -> types.BoundaryConditionType: 8269 return types.BoundaryConditionType[self._Entity.MyType.ToString()] 8270 8271 @property 8272 def MxyType(self) -> types.BoundaryConditionType: 8273 return types.BoundaryConditionType[self._Entity.MxyType.ToString()] 8274 8275 @property 8276 def QxType(self) -> types.BoundaryConditionType: 8277 return types.BoundaryConditionType[self._Entity.QxType.ToString()] 8278 8279 @property 8280 def QyType(self) -> types.BoundaryConditionType: 8281 return types.BoundaryConditionType[self._Entity.QyType.ToString()] 8282 8283 @Nx.setter 8284 def Nx(self, value: float) -> None: 8285 self._Entity.Nx = value 8286 8287 @Ny.setter 8288 def Ny(self, value: float) -> None: 8289 self._Entity.Ny = value 8290 8291 @Nxy.setter 8292 def Nxy(self, value: float) -> None: 8293 self._Entity.Nxy = value 8294 8295 @Mx.setter 8296 def Mx(self, value: float) -> None: 8297 self._Entity.Mx = value 8298 8299 @My.setter 8300 def My(self, value: float) -> None: 8301 self._Entity.My = value 8302 8303 @Mxy.setter 8304 def Mxy(self, value: float) -> None: 8305 self._Entity.Mxy = value 8306 8307 @Qx.setter 8308 def Qx(self, value: float) -> None: 8309 self._Entity.Qx = value 8310 8311 @Qy.setter 8312 def Qy(self, value: float) -> None: 8313 self._Entity.Qy = value 8314 8315 8316class LoadPropertyUserGeneralPanelRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8317 def __init__(self, loadPropertyUserGeneralPanelRowBulkUpdater: _api.LoadPropertyUserGeneralPanelRowBulkUpdater): 8318 self._Entity = loadPropertyUserGeneralPanelRowBulkUpdater 8319 8320 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserGeneralPanelRow]) -> LoadPropertyUserGeneralPanelRowBulkUpdater: 8321 itemsList = List[_api.LoadPropertyUserGeneralPanelRow]() 8322 if items is not None: 8323 for thing in items: 8324 if thing is not None: 8325 itemsList.Add(thing._Entity) 8326 return LoadPropertyUserGeneralPanelRowBulkUpdater(_api.LoadPropertyUserGeneralPanelRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 8327 8328 8329class LoadPropertyFea(LoadProperty): 8330 def __init__(self, loadPropertyFea: _api.LoadPropertyFea): 8331 self._Entity = loadPropertyFea 8332 8333 @property 8334 def HasNx(self) -> bool: 8335 return self._Entity.HasNx 8336 8337 @property 8338 def HasNy(self) -> bool: 8339 return self._Entity.HasNy 8340 8341 @property 8342 def HasNxy(self) -> bool: 8343 return self._Entity.HasNxy 8344 8345 @property 8346 def HasMx(self) -> bool: 8347 return self._Entity.HasMx 8348 8349 @property 8350 def HasMy(self) -> bool: 8351 return self._Entity.HasMy 8352 8353 @property 8354 def HasMxy(self) -> bool: 8355 return self._Entity.HasMxy 8356 8357 @property 8358 def HasQx(self) -> bool: 8359 return self._Entity.HasQx 8360 8361 @property 8362 def HasQy(self) -> bool: 8363 return self._Entity.HasQy 8364 8365 @property 8366 def HasM1a(self) -> bool: 8367 return self._Entity.HasM1a 8368 8369 @property 8370 def HasM1b(self) -> bool: 8371 return self._Entity.HasM1b 8372 8373 @property 8374 def M2a(self) -> bool: 8375 return self._Entity.M2a 8376 8377 @property 8378 def V1(self) -> bool: 8379 return self._Entity.V1 8380 8381 @property 8382 def V2(self) -> bool: 8383 return self._Entity.V2 8384 8385 @property 8386 def Axial(self) -> bool: 8387 return self._Entity.Axial 8388 8389 @property 8390 def Torque(self) -> bool: 8391 return self._Entity.Torque 8392 8393 @property 8394 def Tension(self) -> bool: 8395 return self._Entity.Tension 8396 8397 @property 8398 def Shear(self) -> bool: 8399 return self._Entity.Shear 8400 8401 @property 8402 def Moment(self) -> bool: 8403 return self._Entity.Moment 8404 8405 @HasNx.setter 8406 def HasNx(self, value: bool) -> None: 8407 self._Entity.HasNx = value 8408 8409 @HasNy.setter 8410 def HasNy(self, value: bool) -> None: 8411 self._Entity.HasNy = value 8412 8413 @HasNxy.setter 8414 def HasNxy(self, value: bool) -> None: 8415 self._Entity.HasNxy = value 8416 8417 @HasMx.setter 8418 def HasMx(self, value: bool) -> None: 8419 self._Entity.HasMx = value 8420 8421 @HasMy.setter 8422 def HasMy(self, value: bool) -> None: 8423 self._Entity.HasMy = value 8424 8425 @HasMxy.setter 8426 def HasMxy(self, value: bool) -> None: 8427 self._Entity.HasMxy = value 8428 8429 @HasQx.setter 8430 def HasQx(self, value: bool) -> None: 8431 self._Entity.HasQx = value 8432 8433 @HasQy.setter 8434 def HasQy(self, value: bool) -> None: 8435 self._Entity.HasQy = value 8436 8437 @HasM1a.setter 8438 def HasM1a(self, value: bool) -> None: 8439 self._Entity.HasM1a = value 8440 8441 @HasM1b.setter 8442 def HasM1b(self, value: bool) -> None: 8443 self._Entity.HasM1b = value 8444 8445 @M2a.setter 8446 def M2a(self, value: bool) -> None: 8447 self._Entity.M2a = value 8448 8449 @V1.setter 8450 def V1(self, value: bool) -> None: 8451 self._Entity.V1 = value 8452 8453 @V2.setter 8454 def V2(self, value: bool) -> None: 8455 self._Entity.V2 = value 8456 8457 @Axial.setter 8458 def Axial(self, value: bool) -> None: 8459 self._Entity.Axial = value 8460 8461 @Torque.setter 8462 def Torque(self, value: bool) -> None: 8463 self._Entity.Torque = value 8464 8465 @Tension.setter 8466 def Tension(self, value: bool) -> None: 8467 self._Entity.Tension = value 8468 8469 @Shear.setter 8470 def Shear(self, value: bool) -> None: 8471 self._Entity.Shear = value 8472 8473 @Moment.setter 8474 def Moment(self, value: bool) -> None: 8475 self._Entity.Moment = value 8476 8477 8478class LoadPropertyAverage(LoadPropertyFea): 8479 def __init__(self, loadPropertyAverage: _api.LoadPropertyAverage): 8480 self._Entity = loadPropertyAverage 8481 8482 @property 8483 def ElementType(self) -> types.LoadPropertyAverageElementType: 8484 return types.LoadPropertyAverageElementType[self._Entity.ElementType.ToString()] 8485 8486 @ElementType.setter 8487 def ElementType(self, value: types.LoadPropertyAverageElementType) -> None: 8488 self._Entity.ElementType = _types.LoadPropertyAverageElementType(value.value) 8489 8490 8491class LoadPropertyElementBased(LoadPropertyFea): 8492 def __init__(self, loadPropertyElementBased: _api.LoadPropertyElementBased): 8493 self._Entity = loadPropertyElementBased 8494 8495 8496class LoadPropertyNeighborAverage(LoadPropertyFea): 8497 def __init__(self, loadPropertyNeighborAverage: _api.LoadPropertyNeighborAverage): 8498 self._Entity = loadPropertyNeighborAverage 8499 8500 @property 8501 def NumberOfNeighborsPerSide(self) -> int: 8502 return self._Entity.NumberOfNeighborsPerSide 8503 8504 @NumberOfNeighborsPerSide.setter 8505 def NumberOfNeighborsPerSide(self, value: int) -> None: 8506 self._Entity.NumberOfNeighborsPerSide = value 8507 8508 8509class LoadPropertyPeakLoad(LoadPropertyFea): 8510 def __init__(self, loadPropertyPeakLoad: _api.LoadPropertyPeakLoad): 8511 self._Entity = loadPropertyPeakLoad 8512 8513 @property 8514 def ElementScope(self) -> types.LoadPropertyPeakElementScope: 8515 return types.LoadPropertyPeakElementScope[self._Entity.ElementScope.ToString()] 8516 8517 @ElementScope.setter 8518 def ElementScope(self, value: types.LoadPropertyPeakElementScope) -> None: 8519 self._Entity.ElementScope = _types.LoadPropertyPeakElementScope(value.value) 8520 8521 8522class LoadPropertyStatistical(LoadPropertyFea): 8523 def __init__(self, loadPropertyStatistical: _api.LoadPropertyStatistical): 8524 self._Entity = loadPropertyStatistical 8525 8526 @property 8527 def NSigma(self) -> int: 8528 return self._Entity.NSigma 8529 8530 @NSigma.setter 8531 def NSigma(self, value: int) -> None: 8532 self._Entity.NSigma = value 8533 8534 8535class LoadPropertyUserFeaRowCol(IdNameEntityCol, Generic[T]): 8536 def __init__(self, loadPropertyUserFeaRowCol: _api.LoadPropertyUserFeaRowCol): 8537 self._Entity = loadPropertyUserFeaRowCol 8538 self._CollectedClass = T 8539 8540 @property 8541 def LoadPropertyUserFeaRowColList(self) -> tuple[T]: 8542 if self._Entity.Count() <= 0: 8543 return () 8544 thisClass = type(self._Entity._items[0]).__name__ 8545 givenClass = T 8546 for subclass in T.__subclasses__(): 8547 if subclass.__name__ == thisClass: 8548 givenClass = subclass 8549 return tuple([givenClass(loadPropertyUserFeaRowCol) for loadPropertyUserFeaRowCol in self._Entity]) 8550 8551 def AddScenario(self, name: str = None) -> T: 8552 return self._Entity.AddScenario(name) 8553 8554 @overload 8555 def DeleteScenario(self, scenarioId: int) -> bool: ... 8556 8557 @overload 8558 def DeleteScenario(self, scenarioName: str) -> bool: ... 8559 8560 @overload 8561 def Get(self, name: str) -> T: ... 8562 8563 @overload 8564 def Get(self, id: int) -> T: ... 8565 8566 def DeleteScenario(self, item1 = None) -> bool: 8567 if isinstance(item1, int): 8568 return self._Entity.DeleteScenario(item1) 8569 8570 if isinstance(item1, str): 8571 return self._Entity.DeleteScenario(item1) 8572 8573 return self._Entity.DeleteScenario(item1) 8574 8575 def Get(self, item1 = None) -> T: 8576 if isinstance(item1, str): 8577 return super().Get(item1) 8578 8579 if isinstance(item1, int): 8580 return super().Get(item1) 8581 8582 return self._Entity.Get(item1) 8583 8584 def __getitem__(self, index: int): 8585 return self.LoadPropertyUserFeaRowColList[index] 8586 8587 def __iter__(self): 8588 yield from self.LoadPropertyUserFeaRowColList 8589 8590 def __len__(self): 8591 return len(self.LoadPropertyUserFeaRowColList) 8592 8593 8594class LoadPropertyUserFeaBeamRowCol(LoadPropertyUserFeaRowCol[LoadPropertyUserFeaBeamRow]): 8595 def __init__(self, loadPropertyUserFeaBeamRowCol: _api.LoadPropertyUserFeaBeamRowCol): 8596 self._Entity = loadPropertyUserFeaBeamRowCol 8597 self._CollectedClass = LoadPropertyUserFeaBeamRow 8598 8599 @property 8600 def LoadPropertyUserFeaBeamRowColList(self) -> tuple[LoadPropertyUserFeaBeamRow]: 8601 return tuple([LoadPropertyUserFeaBeamRow(loadPropertyUserFeaBeamRowCol) for loadPropertyUserFeaBeamRowCol in self._Entity]) 8602 8603 @overload 8604 def DeleteScenario(self, scenarioId: int) -> bool: ... 8605 8606 @overload 8607 def DeleteScenario(self, scenarioName: str) -> bool: ... 8608 8609 @overload 8610 def Get(self, name: str) -> LoadPropertyUserFeaBeamRow: ... 8611 8612 @overload 8613 def Get(self, id: int) -> LoadPropertyUserFeaBeamRow: ... 8614 8615 def DeleteScenario(self, item1 = None) -> bool: 8616 if isinstance(item1, int): 8617 return bool(super().DeleteScenario(item1)) 8618 8619 if isinstance(item1, str): 8620 return bool(super().DeleteScenario(item1)) 8621 8622 return self._Entity.DeleteScenario(item1) 8623 8624 def Get(self, item1 = None) -> LoadPropertyUserFeaBeamRow: 8625 if isinstance(item1, str): 8626 return LoadPropertyUserFeaBeamRow(super().Get(item1)) 8627 8628 if isinstance(item1, int): 8629 return LoadPropertyUserFeaBeamRow(super().Get(item1)) 8630 8631 return self._Entity.Get(item1) 8632 8633 def __getitem__(self, index: int): 8634 return self.LoadPropertyUserFeaBeamRowColList[index] 8635 8636 def __iter__(self): 8637 yield from self.LoadPropertyUserFeaBeamRowColList 8638 8639 def __len__(self): 8640 return len(self.LoadPropertyUserFeaBeamRowColList) 8641 8642 8643class LoadPropertyUserFeaBeam(LoadProperty): 8644 def __init__(self, loadPropertyUserFeaBeam: _api.LoadPropertyUserFeaBeam): 8645 self._Entity = loadPropertyUserFeaBeam 8646 8647 @property 8648 def UserFeaRows(self) -> LoadPropertyUserFeaBeamRowCol: 8649 result = self._Entity.UserFeaRows 8650 return LoadPropertyUserFeaBeamRowCol(result) if result is not None else None 8651 8652 8653class LoadPropertyUserFeaJointRowCol(LoadPropertyUserFeaRowCol[LoadPropertyUserFeaJointRow]): 8654 def __init__(self, loadPropertyUserFeaJointRowCol: _api.LoadPropertyUserFeaJointRowCol): 8655 self._Entity = loadPropertyUserFeaJointRowCol 8656 self._CollectedClass = LoadPropertyUserFeaJointRow 8657 8658 @property 8659 def LoadPropertyUserFeaJointRowColList(self) -> tuple[LoadPropertyUserFeaJointRow]: 8660 return tuple([LoadPropertyUserFeaJointRow(loadPropertyUserFeaJointRowCol) for loadPropertyUserFeaJointRowCol in self._Entity]) 8661 8662 @overload 8663 def DeleteScenario(self, scenarioId: int) -> bool: ... 8664 8665 @overload 8666 def DeleteScenario(self, scenarioName: str) -> bool: ... 8667 8668 @overload 8669 def Get(self, name: str) -> LoadPropertyUserFeaJointRow: ... 8670 8671 @overload 8672 def Get(self, id: int) -> LoadPropertyUserFeaJointRow: ... 8673 8674 def DeleteScenario(self, item1 = None) -> bool: 8675 if isinstance(item1, int): 8676 return bool(super().DeleteScenario(item1)) 8677 8678 if isinstance(item1, str): 8679 return bool(super().DeleteScenario(item1)) 8680 8681 return self._Entity.DeleteScenario(item1) 8682 8683 def Get(self, item1 = None) -> LoadPropertyUserFeaJointRow: 8684 if isinstance(item1, str): 8685 return LoadPropertyUserFeaJointRow(super().Get(item1)) 8686 8687 if isinstance(item1, int): 8688 return LoadPropertyUserFeaJointRow(super().Get(item1)) 8689 8690 return self._Entity.Get(item1) 8691 8692 def __getitem__(self, index: int): 8693 return self.LoadPropertyUserFeaJointRowColList[index] 8694 8695 def __iter__(self): 8696 yield from self.LoadPropertyUserFeaJointRowColList 8697 8698 def __len__(self): 8699 return len(self.LoadPropertyUserFeaJointRowColList) 8700 8701 8702class LoadPropertyUserFeaJoint(LoadProperty): 8703 def __init__(self, loadPropertyUserFeaJoint: _api.LoadPropertyUserFeaJoint): 8704 self._Entity = loadPropertyUserFeaJoint 8705 8706 @property 8707 def UserFeaRows(self) -> LoadPropertyUserFeaJointRowCol: 8708 result = self._Entity.UserFeaRows 8709 return LoadPropertyUserFeaJointRowCol(result) if result is not None else None 8710 8711 8712class LoadPropertyUserFeaPanelRowCol(LoadPropertyUserFeaRowCol[LoadPropertyUserFeaPanelRow]): 8713 def __init__(self, loadPropertyUserFeaPanelRowCol: _api.LoadPropertyUserFeaPanelRowCol): 8714 self._Entity = loadPropertyUserFeaPanelRowCol 8715 self._CollectedClass = LoadPropertyUserFeaPanelRow 8716 8717 @property 8718 def LoadPropertyUserFeaPanelRowColList(self) -> tuple[LoadPropertyUserFeaPanelRow]: 8719 return tuple([LoadPropertyUserFeaPanelRow(loadPropertyUserFeaPanelRowCol) for loadPropertyUserFeaPanelRowCol in self._Entity]) 8720 8721 @overload 8722 def DeleteScenario(self, scenarioId: int) -> bool: ... 8723 8724 @overload 8725 def DeleteScenario(self, scenarioName: str) -> bool: ... 8726 8727 @overload 8728 def Get(self, name: str) -> LoadPropertyUserFeaPanelRow: ... 8729 8730 @overload 8731 def Get(self, id: int) -> LoadPropertyUserFeaPanelRow: ... 8732 8733 def DeleteScenario(self, item1 = None) -> bool: 8734 if isinstance(item1, int): 8735 return bool(super().DeleteScenario(item1)) 8736 8737 if isinstance(item1, str): 8738 return bool(super().DeleteScenario(item1)) 8739 8740 return self._Entity.DeleteScenario(item1) 8741 8742 def Get(self, item1 = None) -> LoadPropertyUserFeaPanelRow: 8743 if isinstance(item1, str): 8744 return LoadPropertyUserFeaPanelRow(super().Get(item1)) 8745 8746 if isinstance(item1, int): 8747 return LoadPropertyUserFeaPanelRow(super().Get(item1)) 8748 8749 return self._Entity.Get(item1) 8750 8751 def __getitem__(self, index: int): 8752 return self.LoadPropertyUserFeaPanelRowColList[index] 8753 8754 def __iter__(self): 8755 yield from self.LoadPropertyUserFeaPanelRowColList 8756 8757 def __len__(self): 8758 return len(self.LoadPropertyUserFeaPanelRowColList) 8759 8760 8761class LoadPropertyUserFeaPanel(LoadProperty): 8762 def __init__(self, loadPropertyUserFeaPanel: _api.LoadPropertyUserFeaPanel): 8763 self._Entity = loadPropertyUserFeaPanel 8764 8765 @property 8766 def UserFeaRows(self) -> LoadPropertyUserFeaPanelRowCol: 8767 result = self._Entity.UserFeaRows 8768 return LoadPropertyUserFeaPanelRowCol(result) if result is not None else None 8769 8770 def SetIsZeroCurvature(self, isZeroCurvature: bool) -> None: 8771 return self._Entity.SetIsZeroCurvature(isZeroCurvature) 8772 8773 8774class LoadPropertyUserGeneralDoubleRow(IdNameEntity): 8775 def __init__(self, loadPropertyUserGeneralDoubleRow: _api.LoadPropertyUserGeneralDoubleRow): 8776 self._Entity = loadPropertyUserGeneralDoubleRow 8777 8778 @property 8779 def MechanicalRow(self) -> LoadPropertyUserRow: 8780 thisClass = type(self._Entity.MechanicalRow).__name__ 8781 givenClass = LoadPropertyUserRow 8782 for subclass in LoadPropertyUserRow.__subclasses__(): 8783 if subclass.__name__ == thisClass: 8784 givenClass = subclass 8785 result = self._Entity.MechanicalRow 8786 return givenClass(result) if result is not None else None 8787 8788 @property 8789 def ThermalRow(self) -> LoadPropertyUserRow: 8790 thisClass = type(self._Entity.ThermalRow).__name__ 8791 givenClass = LoadPropertyUserRow 8792 for subclass in LoadPropertyUserRow.__subclasses__(): 8793 if subclass.__name__ == thisClass: 8794 givenClass = subclass 8795 result = self._Entity.ThermalRow 8796 return givenClass(result) if result is not None else None 8797 8798 def SetName(self, name: str) -> None: 8799 return self._Entity.SetName(name) 8800 8801 8802class LoadPropertyUserGeneralBeamDoubleRow(LoadPropertyUserGeneralDoubleRow): 8803 def __init__(self, loadPropertyUserGeneralBeamDoubleRow: _api.LoadPropertyUserGeneralBeamDoubleRow): 8804 self._Entity = loadPropertyUserGeneralBeamDoubleRow 8805 8806 @property 8807 def MechanicalRow(self) -> LoadPropertyUserRow: 8808 thisClass = type(self._Entity.MechanicalRow).__name__ 8809 givenClass = LoadPropertyUserRow 8810 for subclass in LoadPropertyUserRow.__subclasses__(): 8811 if subclass.__name__ == thisClass: 8812 givenClass = subclass 8813 result = self._Entity.MechanicalRow 8814 return givenClass(result) if result is not None else None 8815 8816 @property 8817 def ThermalRow(self) -> LoadPropertyUserRow: 8818 thisClass = type(self._Entity.ThermalRow).__name__ 8819 givenClass = LoadPropertyUserRow 8820 for subclass in LoadPropertyUserRow.__subclasses__(): 8821 if subclass.__name__ == thisClass: 8822 givenClass = subclass 8823 result = self._Entity.ThermalRow 8824 return givenClass(result) if result is not None else None 8825 8826 @property 8827 def M1AType(self) -> types.BoundaryConditionType: 8828 return types.BoundaryConditionType[self._Entity.M1AType.ToString()] 8829 8830 @property 8831 def M2AType(self) -> types.BoundaryConditionType: 8832 return types.BoundaryConditionType[self._Entity.M2AType.ToString()] 8833 8834 @property 8835 def M1BType(self) -> types.BoundaryConditionType: 8836 return types.BoundaryConditionType[self._Entity.M1BType.ToString()] 8837 8838 @property 8839 def M2BType(self) -> types.BoundaryConditionType: 8840 return types.BoundaryConditionType[self._Entity.M2BType.ToString()] 8841 8842 @property 8843 def V1Type(self) -> types.BoundaryConditionType: 8844 return types.BoundaryConditionType[self._Entity.V1Type.ToString()] 8845 8846 @property 8847 def V2Type(self) -> types.BoundaryConditionType: 8848 return types.BoundaryConditionType[self._Entity.V2Type.ToString()] 8849 8850 @property 8851 def AxialType(self) -> types.BoundaryConditionType: 8852 return types.BoundaryConditionType[self._Entity.AxialType.ToString()] 8853 8854 @property 8855 def TorqueType(self) -> types.BoundaryConditionType: 8856 return types.BoundaryConditionType[self._Entity.TorqueType.ToString()] 8857 8858 def SetM1AType(self, type: types.BoundaryConditionType) -> None: 8859 return self._Entity.SetM1AType(_types.BoundaryConditionType(type.value)) 8860 8861 def SetM2AType(self, type: types.BoundaryConditionType) -> None: 8862 return self._Entity.SetM2AType(_types.BoundaryConditionType(type.value)) 8863 8864 def SetM1BType(self, type: types.BoundaryConditionType) -> None: 8865 return self._Entity.SetM1BType(_types.BoundaryConditionType(type.value)) 8866 8867 def SetM2BType(self, type: types.BoundaryConditionType) -> None: 8868 return self._Entity.SetM2BType(_types.BoundaryConditionType(type.value)) 8869 8870 def SetV1Type(self, type: types.BoundaryConditionType) -> None: 8871 return self._Entity.SetV1Type(_types.BoundaryConditionType(type.value)) 8872 8873 def SetV2Type(self, type: types.BoundaryConditionType) -> None: 8874 return self._Entity.SetV2Type(_types.BoundaryConditionType(type.value)) 8875 8876 def SetAxialType(self, type: types.BoundaryConditionType) -> None: 8877 return self._Entity.SetAxialType(_types.BoundaryConditionType(type.value)) 8878 8879 def SetTorqueType(self, type: types.BoundaryConditionType) -> None: 8880 return self._Entity.SetTorqueType(_types.BoundaryConditionType(type.value)) 8881 8882 8883class LoadPropertyUserGeneralRowCol(IdNameEntityCol, Generic[T]): 8884 def __init__(self, loadPropertyUserGeneralRowCol: _api.LoadPropertyUserGeneralRowCol): 8885 self._Entity = loadPropertyUserGeneralRowCol 8886 self._CollectedClass = T 8887 8888 @property 8889 def LoadPropertyUserGeneralRowColList(self) -> tuple[T]: 8890 if self._Entity.Count() <= 0: 8891 return () 8892 thisClass = type(self._Entity._items[0]).__name__ 8893 givenClass = T 8894 for subclass in T.__subclasses__(): 8895 if subclass.__name__ == thisClass: 8896 givenClass = subclass 8897 return tuple([givenClass(loadPropertyUserGeneralRowCol) for loadPropertyUserGeneralRowCol in self._Entity]) 8898 8899 def AddScenario(self, name: str = None) -> T: 8900 return self._Entity.AddScenario(name) 8901 8902 @overload 8903 def DeleteScenario(self, scenarioId: int) -> bool: ... 8904 8905 @overload 8906 def DeleteScenario(self, scenarioName: str) -> bool: ... 8907 8908 @overload 8909 def Get(self, name: str) -> T: ... 8910 8911 @overload 8912 def Get(self, id: int) -> T: ... 8913 8914 def DeleteScenario(self, item1 = None) -> bool: 8915 if isinstance(item1, int): 8916 return self._Entity.DeleteScenario(item1) 8917 8918 if isinstance(item1, str): 8919 return self._Entity.DeleteScenario(item1) 8920 8921 return self._Entity.DeleteScenario(item1) 8922 8923 def Get(self, item1 = None) -> T: 8924 if isinstance(item1, str): 8925 return super().Get(item1) 8926 8927 if isinstance(item1, int): 8928 return super().Get(item1) 8929 8930 return self._Entity.Get(item1) 8931 8932 def __getitem__(self, index: int): 8933 return self.LoadPropertyUserGeneralRowColList[index] 8934 8935 def __iter__(self): 8936 yield from self.LoadPropertyUserGeneralRowColList 8937 8938 def __len__(self): 8939 return len(self.LoadPropertyUserGeneralRowColList) 8940 8941 8942class LoadPropertyUserGeneralBeamRowCol(LoadPropertyUserGeneralRowCol[LoadPropertyUserGeneralBeamDoubleRow]): 8943 def __init__(self, loadPropertyUserGeneralBeamRowCol: _api.LoadPropertyUserGeneralBeamRowCol): 8944 self._Entity = loadPropertyUserGeneralBeamRowCol 8945 self._CollectedClass = LoadPropertyUserGeneralBeamDoubleRow 8946 8947 @property 8948 def LoadPropertyUserGeneralBeamRowColList(self) -> tuple[LoadPropertyUserGeneralBeamDoubleRow]: 8949 return tuple([LoadPropertyUserGeneralBeamDoubleRow(loadPropertyUserGeneralBeamRowCol) for loadPropertyUserGeneralBeamRowCol in self._Entity]) 8950 8951 @overload 8952 def DeleteScenario(self, scenarioId: int) -> bool: ... 8953 8954 @overload 8955 def DeleteScenario(self, scenarioName: str) -> bool: ... 8956 8957 @overload 8958 def Get(self, name: str) -> LoadPropertyUserGeneralBeamDoubleRow: ... 8959 8960 @overload 8961 def Get(self, id: int) -> LoadPropertyUserGeneralBeamDoubleRow: ... 8962 8963 def DeleteScenario(self, item1 = None) -> bool: 8964 if isinstance(item1, int): 8965 return bool(super().DeleteScenario(item1)) 8966 8967 if isinstance(item1, str): 8968 return bool(super().DeleteScenario(item1)) 8969 8970 return self._Entity.DeleteScenario(item1) 8971 8972 def Get(self, item1 = None) -> LoadPropertyUserGeneralBeamDoubleRow: 8973 if isinstance(item1, str): 8974 return LoadPropertyUserGeneralBeamDoubleRow(super().Get(item1)) 8975 8976 if isinstance(item1, int): 8977 return LoadPropertyUserGeneralBeamDoubleRow(super().Get(item1)) 8978 8979 return self._Entity.Get(item1) 8980 8981 def __getitem__(self, index: int): 8982 return self.LoadPropertyUserGeneralBeamRowColList[index] 8983 8984 def __iter__(self): 8985 yield from self.LoadPropertyUserGeneralBeamRowColList 8986 8987 def __len__(self): 8988 return len(self.LoadPropertyUserGeneralBeamRowColList) 8989 8990 8991class LoadPropertyUserGeneralBeam(LoadProperty): 8992 def __init__(self, loadPropertyUserGeneralBeam: _api.LoadPropertyUserGeneralBeam): 8993 self._Entity = loadPropertyUserGeneralBeam 8994 8995 @property 8996 def UserGeneralRows(self) -> LoadPropertyUserGeneralBeamRowCol: 8997 result = self._Entity.UserGeneralRows 8998 return LoadPropertyUserGeneralBeamRowCol(result) if result is not None else None 8999 9000 @property 9001 def IsIncludingThermal(self) -> bool: 9002 return self._Entity.IsIncludingThermal 9003 9004 @IsIncludingThermal.setter 9005 def IsIncludingThermal(self, value: bool) -> None: 9006 self._Entity.IsIncludingThermal = value 9007 9008 9009class LoadPropertyUserGeneralBoltedRow(IdEntity): 9010 def __init__(self, loadPropertyUserGeneralBoltedRow: _api.LoadPropertyUserGeneralBoltedRow): 9011 self._Entity = loadPropertyUserGeneralBoltedRow 9012 9013 @property 9014 def LoadPropertyId(self) -> int: 9015 return self._Entity.LoadPropertyId 9016 9017 @property 9018 def LoadScenarioId(self) -> int: 9019 return self._Entity.LoadScenarioId 9020 9021 @property 9022 def Fx(self) -> float: 9023 return self._Entity.Fx 9024 9025 @property 9026 def Fy(self) -> float: 9027 return self._Entity.Fy 9028 9029 @property 9030 def Fz(self) -> float: 9031 return self._Entity.Fz 9032 9033 @property 9034 def Mx(self) -> float: 9035 return self._Entity.Mx 9036 9037 @property 9038 def My(self) -> float: 9039 return self._Entity.My 9040 9041 @property 9042 def Mz(self) -> float: 9043 return self._Entity.Mz 9044 9045 @property 9046 def NxBypass(self) -> float: 9047 return self._Entity.NxBypass 9048 9049 @property 9050 def NyBypass(self) -> float: 9051 return self._Entity.NyBypass 9052 9053 @property 9054 def NxyBypass(self) -> float: 9055 return self._Entity.NxyBypass 9056 9057 @property 9058 def LimitFactor(self) -> float: 9059 return self._Entity.LimitFactor 9060 9061 @property 9062 def UltimateFactor(self) -> float: 9063 return self._Entity.UltimateFactor 9064 9065 @Fx.setter 9066 def Fx(self, value: float) -> None: 9067 self._Entity.Fx = value 9068 9069 @Fy.setter 9070 def Fy(self, value: float) -> None: 9071 self._Entity.Fy = value 9072 9073 @Fz.setter 9074 def Fz(self, value: float) -> None: 9075 self._Entity.Fz = value 9076 9077 @Mx.setter 9078 def Mx(self, value: float) -> None: 9079 self._Entity.Mx = value 9080 9081 @My.setter 9082 def My(self, value: float) -> None: 9083 self._Entity.My = value 9084 9085 @Mz.setter 9086 def Mz(self, value: float) -> None: 9087 self._Entity.Mz = value 9088 9089 @NxBypass.setter 9090 def NxBypass(self, value: float) -> None: 9091 self._Entity.NxBypass = value 9092 9093 @NyBypass.setter 9094 def NyBypass(self, value: float) -> None: 9095 self._Entity.NyBypass = value 9096 9097 @NxyBypass.setter 9098 def NxyBypass(self, value: float) -> None: 9099 self._Entity.NxyBypass = value 9100 9101 @LimitFactor.setter 9102 def LimitFactor(self, value: float) -> None: 9103 self._Entity.LimitFactor = value 9104 9105 @UltimateFactor.setter 9106 def UltimateFactor(self, value: float) -> None: 9107 self._Entity.UltimateFactor = value 9108 9109 9110class LoadPropertyUserGeneralBoltedRowCol(IdEntityCol[LoadPropertyUserGeneralBoltedRow]): 9111 def __init__(self, loadPropertyUserGeneralBoltedRowCol: _api.LoadPropertyUserGeneralBoltedRowCol): 9112 self._Entity = loadPropertyUserGeneralBoltedRowCol 9113 self._CollectedClass = LoadPropertyUserGeneralBoltedRow 9114 9115 @property 9116 def LoadPropertyUserGeneralBoltedRowColList(self) -> tuple[LoadPropertyUserGeneralBoltedRow]: 9117 return tuple([LoadPropertyUserGeneralBoltedRow(loadPropertyUserGeneralBoltedRowCol) for loadPropertyUserGeneralBoltedRowCol in self._Entity]) 9118 9119 def AddScenario(self) -> None: 9120 ''' 9121 Adds a load scenario with default values 9122 ''' 9123 return self._Entity.AddScenario() 9124 9125 def DeleteScenario(self, scenarioId: int) -> bool: 9126 return self._Entity.DeleteScenario(scenarioId) 9127 9128 def __getitem__(self, index: int): 9129 return self.LoadPropertyUserGeneralBoltedRowColList[index] 9130 9131 def __iter__(self): 9132 yield from self.LoadPropertyUserGeneralBoltedRowColList 9133 9134 def __len__(self): 9135 return len(self.LoadPropertyUserGeneralBoltedRowColList) 9136 9137 9138class LoadPropertyUserGeneralBolted(LoadProperty): 9139 def __init__(self, loadPropertyUserGeneralBolted: _api.LoadPropertyUserGeneralBolted): 9140 self._Entity = loadPropertyUserGeneralBolted 9141 9142 @property 9143 def UserGeneralBoltedRows(self) -> LoadPropertyUserGeneralBoltedRowCol: 9144 result = self._Entity.UserGeneralBoltedRows 9145 return LoadPropertyUserGeneralBoltedRowCol(result) if result is not None else None 9146 9147 9148class LoadPropertyUserGeneralBondedRow(IdEntity): 9149 def __init__(self, loadPropertyUserGeneralBondedRow: _api.LoadPropertyUserGeneralBondedRow): 9150 self._Entity = loadPropertyUserGeneralBondedRow 9151 9152 @property 9153 def LoadPropertyId(self) -> int: 9154 return self._Entity.LoadPropertyId 9155 9156 @property 9157 def JointConceptId(self) -> types.JointConceptId: 9158 return types.JointConceptId[self._Entity.JointConceptId.ToString()] 9159 9160 @property 9161 def BondedBcId(self) -> int: 9162 return self._Entity.BondedBcId 9163 9164 @property 9165 def AxialType(self) -> types.BoundaryConditionType: 9166 return types.BoundaryConditionType[self._Entity.AxialType.ToString()] 9167 9168 @property 9169 def MomentType(self) -> types.BoundaryConditionType: 9170 return types.BoundaryConditionType[self._Entity.MomentType.ToString()] 9171 9172 @property 9173 def TransverseType(self) -> types.BoundaryConditionType: 9174 return types.BoundaryConditionType[self._Entity.TransverseType.ToString()] 9175 9176 @property 9177 def ShearType(self) -> types.BoundaryConditionType: 9178 return types.BoundaryConditionType[self._Entity.ShearType.ToString()] 9179 9180 @property 9181 def Axial(self) -> float: 9182 return self._Entity.Axial 9183 9184 @property 9185 def Moment(self) -> float: 9186 return self._Entity.Moment 9187 9188 @property 9189 def Transverse(self) -> float: 9190 return self._Entity.Transverse 9191 9192 @property 9193 def Shear(self) -> float: 9194 return self._Entity.Shear 9195 9196 @AxialType.setter 9197 def AxialType(self, value: types.BoundaryConditionType) -> None: 9198 self._Entity.AxialType = _types.BoundaryConditionType(value.value) 9199 9200 @MomentType.setter 9201 def MomentType(self, value: types.BoundaryConditionType) -> None: 9202 self._Entity.MomentType = _types.BoundaryConditionType(value.value) 9203 9204 @TransverseType.setter 9205 def TransverseType(self, value: types.BoundaryConditionType) -> None: 9206 self._Entity.TransverseType = _types.BoundaryConditionType(value.value) 9207 9208 @ShearType.setter 9209 def ShearType(self, value: types.BoundaryConditionType) -> None: 9210 self._Entity.ShearType = _types.BoundaryConditionType(value.value) 9211 9212 @Axial.setter 9213 def Axial(self, value: float) -> None: 9214 self._Entity.Axial = value 9215 9216 @Moment.setter 9217 def Moment(self, value: float) -> None: 9218 self._Entity.Moment = value 9219 9220 @Transverse.setter 9221 def Transverse(self, value: float) -> None: 9222 self._Entity.Transverse = value 9223 9224 @Shear.setter 9225 def Shear(self, value: float) -> None: 9226 self._Entity.Shear = value 9227 9228 def UpdateRow(self) -> None: 9229 return self._Entity.UpdateRow() 9230 9231 9232class LoadPropertyUserGeneralBondedRowCol(IdEntityCol[LoadPropertyUserGeneralBondedRow]): 9233 def __init__(self, loadPropertyUserGeneralBondedRowCol: _api.LoadPropertyUserGeneralBondedRowCol): 9234 self._Entity = loadPropertyUserGeneralBondedRowCol 9235 self._CollectedClass = LoadPropertyUserGeneralBondedRow 9236 9237 @property 9238 def LoadPropertyUserGeneralBondedRowColList(self) -> tuple[LoadPropertyUserGeneralBondedRow]: 9239 return tuple([LoadPropertyUserGeneralBondedRow(loadPropertyUserGeneralBondedRowCol) for loadPropertyUserGeneralBondedRowCol in self._Entity]) 9240 9241 def __getitem__(self, index: int): 9242 return self.LoadPropertyUserGeneralBondedRowColList[index] 9243 9244 def __iter__(self): 9245 yield from self.LoadPropertyUserGeneralBondedRowColList 9246 9247 def __len__(self): 9248 return len(self.LoadPropertyUserGeneralBondedRowColList) 9249 9250 9251class LoadPropertyJoint(IdEntity): 9252 def __init__(self, loadPropertyJoint: _api.LoadPropertyJoint): 9253 self._Entity = loadPropertyJoint 9254 9255 @property 9256 def UserGeneralBondedRows(self) -> LoadPropertyUserGeneralBondedRowCol: 9257 result = self._Entity.UserGeneralBondedRows 9258 return LoadPropertyUserGeneralBondedRowCol(result) if result is not None else None 9259 9260 @property 9261 def LoadPropertyId(self) -> int: 9262 return self._Entity.LoadPropertyId 9263 9264 @property 9265 def JConceptId(self) -> types.JointConceptId: 9266 return types.JointConceptId[self._Entity.JConceptId.ToString()] 9267 9268 @property 9269 def Ex(self) -> float: 9270 return self._Entity.Ex 9271 9272 @property 9273 def Kx(self) -> float: 9274 return self._Entity.Kx 9275 9276 @property 9277 def Kxy(self) -> float: 9278 return self._Entity.Kxy 9279 9280 @property 9281 def Temperature(self) -> float: 9282 return self._Entity.Temperature 9283 9284 @JConceptId.setter 9285 def JConceptId(self, value: types.JointConceptId) -> None: 9286 self._Entity.JConceptId = _types.JointConceptId(value.value) 9287 9288 @Ex.setter 9289 def Ex(self, value: float) -> None: 9290 self._Entity.Ex = value 9291 9292 @Kx.setter 9293 def Kx(self, value: float) -> None: 9294 self._Entity.Kx = value 9295 9296 @Kxy.setter 9297 def Kxy(self, value: float) -> None: 9298 self._Entity.Kxy = value 9299 9300 @Temperature.setter 9301 def Temperature(self, value: float) -> None: 9302 self._Entity.Temperature = value 9303 9304 9305class LoadPropertyUserGeneralBonded(LoadProperty): 9306 def __init__(self, loadPropertyUserGeneralBonded: _api.LoadPropertyUserGeneralBonded): 9307 self._Entity = loadPropertyUserGeneralBonded 9308 9309 @property 9310 def LoadPropertyJoint(self) -> LoadPropertyJoint: 9311 result = self._Entity.LoadPropertyJoint 9312 return LoadPropertyJoint(result) if result is not None else None 9313 9314 9315class LoadPropertyUserGeneralPanelDoubleRow(LoadPropertyUserGeneralDoubleRow): 9316 def __init__(self, loadPropertyUserGeneralPanelDoubleRow: _api.LoadPropertyUserGeneralPanelDoubleRow): 9317 self._Entity = loadPropertyUserGeneralPanelDoubleRow 9318 9319 @property 9320 def MechanicalRow(self) -> LoadPropertyUserRow: 9321 thisClass = type(self._Entity.MechanicalRow).__name__ 9322 givenClass = LoadPropertyUserRow 9323 for subclass in LoadPropertyUserRow.__subclasses__(): 9324 if subclass.__name__ == thisClass: 9325 givenClass = subclass 9326 result = self._Entity.MechanicalRow 9327 return givenClass(result) if result is not None else None 9328 9329 @property 9330 def ThermalRow(self) -> LoadPropertyUserRow: 9331 thisClass = type(self._Entity.ThermalRow).__name__ 9332 givenClass = LoadPropertyUserRow 9333 for subclass in LoadPropertyUserRow.__subclasses__(): 9334 if subclass.__name__ == thisClass: 9335 givenClass = subclass 9336 result = self._Entity.ThermalRow 9337 return givenClass(result) if result is not None else None 9338 9339 @property 9340 def NxType(self) -> types.BoundaryConditionType: 9341 return types.BoundaryConditionType[self._Entity.NxType.ToString()] 9342 9343 @property 9344 def NyType(self) -> types.BoundaryConditionType: 9345 return types.BoundaryConditionType[self._Entity.NyType.ToString()] 9346 9347 @property 9348 def NxyType(self) -> types.BoundaryConditionType: 9349 return types.BoundaryConditionType[self._Entity.NxyType.ToString()] 9350 9351 @property 9352 def MxType(self) -> types.BoundaryConditionType: 9353 return types.BoundaryConditionType[self._Entity.MxType.ToString()] 9354 9355 @property 9356 def MyType(self) -> types.BoundaryConditionType: 9357 return types.BoundaryConditionType[self._Entity.MyType.ToString()] 9358 9359 @property 9360 def MxyType(self) -> types.BoundaryConditionType: 9361 return types.BoundaryConditionType[self._Entity.MxyType.ToString()] 9362 9363 @property 9364 def QxType(self) -> types.BoundaryConditionType: 9365 return types.BoundaryConditionType[self._Entity.QxType.ToString()] 9366 9367 @property 9368 def QyType(self) -> types.BoundaryConditionType: 9369 return types.BoundaryConditionType[self._Entity.QyType.ToString()] 9370 9371 def SetNxType(self, type: types.BoundaryConditionType) -> None: 9372 return self._Entity.SetNxType(_types.BoundaryConditionType(type.value)) 9373 9374 def SetNyType(self, type: types.BoundaryConditionType) -> None: 9375 return self._Entity.SetNyType(_types.BoundaryConditionType(type.value)) 9376 9377 def SetNxyType(self, type: types.BoundaryConditionType) -> None: 9378 return self._Entity.SetNxyType(_types.BoundaryConditionType(type.value)) 9379 9380 def SetMxType(self, type: types.BoundaryConditionType) -> None: 9381 return self._Entity.SetMxType(_types.BoundaryConditionType(type.value)) 9382 9383 def SetMyType(self, type: types.BoundaryConditionType) -> None: 9384 return self._Entity.SetMyType(_types.BoundaryConditionType(type.value)) 9385 9386 def SetMxyType(self, type: types.BoundaryConditionType) -> None: 9387 return self._Entity.SetMxyType(_types.BoundaryConditionType(type.value)) 9388 9389 def SetQxType(self, type: types.BoundaryConditionType) -> None: 9390 return self._Entity.SetQxType(_types.BoundaryConditionType(type.value)) 9391 9392 def SetQyType(self, type: types.BoundaryConditionType) -> None: 9393 return self._Entity.SetQyType(_types.BoundaryConditionType(type.value)) 9394 9395 9396class LoadPropertyUserGeneralPanelRowCol(LoadPropertyUserGeneralRowCol[LoadPropertyUserGeneralPanelDoubleRow]): 9397 def __init__(self, loadPropertyUserGeneralPanelRowCol: _api.LoadPropertyUserGeneralPanelRowCol): 9398 self._Entity = loadPropertyUserGeneralPanelRowCol 9399 self._CollectedClass = LoadPropertyUserGeneralPanelDoubleRow 9400 9401 @property 9402 def LoadPropertyUserGeneralPanelRowColList(self) -> tuple[LoadPropertyUserGeneralPanelDoubleRow]: 9403 return tuple([LoadPropertyUserGeneralPanelDoubleRow(loadPropertyUserGeneralPanelRowCol) for loadPropertyUserGeneralPanelRowCol in self._Entity]) 9404 9405 @overload 9406 def DeleteScenario(self, scenarioId: int) -> bool: ... 9407 9408 @overload 9409 def DeleteScenario(self, scenarioName: str) -> bool: ... 9410 9411 @overload 9412 def Get(self, name: str) -> LoadPropertyUserGeneralPanelDoubleRow: ... 9413 9414 @overload 9415 def Get(self, id: int) -> LoadPropertyUserGeneralPanelDoubleRow: ... 9416 9417 def DeleteScenario(self, item1 = None) -> bool: 9418 if isinstance(item1, int): 9419 return bool(super().DeleteScenario(item1)) 9420 9421 if isinstance(item1, str): 9422 return bool(super().DeleteScenario(item1)) 9423 9424 return self._Entity.DeleteScenario(item1) 9425 9426 def Get(self, item1 = None) -> LoadPropertyUserGeneralPanelDoubleRow: 9427 if isinstance(item1, str): 9428 return LoadPropertyUserGeneralPanelDoubleRow(super().Get(item1)) 9429 9430 if isinstance(item1, int): 9431 return LoadPropertyUserGeneralPanelDoubleRow(super().Get(item1)) 9432 9433 return self._Entity.Get(item1) 9434 9435 def __getitem__(self, index: int): 9436 return self.LoadPropertyUserGeneralPanelRowColList[index] 9437 9438 def __iter__(self): 9439 yield from self.LoadPropertyUserGeneralPanelRowColList 9440 9441 def __len__(self): 9442 return len(self.LoadPropertyUserGeneralPanelRowColList) 9443 9444 9445class LoadPropertyUserGeneralPanel(LoadProperty): 9446 def __init__(self, loadPropertyUserGeneralPanel: _api.LoadPropertyUserGeneralPanel): 9447 self._Entity = loadPropertyUserGeneralPanel 9448 9449 @property 9450 def UserGeneralRows(self) -> LoadPropertyUserGeneralPanelRowCol: 9451 result = self._Entity.UserGeneralRows 9452 return LoadPropertyUserGeneralPanelRowCol(result) if result is not None else None 9453 9454 @property 9455 def IsIncludingThermal(self) -> bool: 9456 return self._Entity.IsIncludingThermal 9457 9458 @IsIncludingThermal.setter 9459 def IsIncludingThermal(self, value: bool) -> None: 9460 self._Entity.IsIncludingThermal = value 9461 9462 def SetIsZeroCurvature(self, isZeroCurvature: bool) -> None: 9463 return self._Entity.SetIsZeroCurvature(isZeroCurvature) 9464 9465 9466class JointSelectionDesignResult(JointDesignResult): 9467 def __init__(self, jointSelectionDesignResult: _api.JointSelectionDesignResult): 9468 self._Entity = jointSelectionDesignResult 9469 9470 @property 9471 def JointSelectionId(self) -> types.JointSelectionId: 9472 return types.JointSelectionId[self._Entity.JointSelectionId.ToString()] 9473 9474 9475class JointFastenerDesignResult(JointSelectionDesignResult): 9476 def __init__(self, jointFastenerDesignResult: _api.JointFastenerDesignResult): 9477 self._Entity = jointFastenerDesignResult 9478 9479 @property 9480 def FastenerBoltId(self) -> int: 9481 return self._Entity.FastenerBoltId 9482 9483 @property 9484 def FastenerCodeId(self) -> int: 9485 return self._Entity.FastenerCodeId 9486 9487 9488class JointMaterialDesignResult(JointSelectionDesignResult): 9489 def __init__(self, jointMaterialDesignResult: _api.JointMaterialDesignResult): 9490 self._Entity = jointMaterialDesignResult 9491 9492 @property 9493 def MaterialId(self) -> int: 9494 return self._Entity.MaterialId 9495 9496 @property 9497 def MaterialType(self) -> types.MaterialType: 9498 ''' 9499 Represents a material's type. 9500 ''' 9501 return types.MaterialType[self._Entity.MaterialType.ToString()] 9502 9503 9504class JointRangeDesignResult(JointDesignResult): 9505 def __init__(self, jointRangeDesignResult: _api.JointRangeDesignResult): 9506 self._Entity = jointRangeDesignResult 9507 9508 @property 9509 def JointRangeId(self) -> types.JointRangeId: 9510 return types.JointRangeId[self._Entity.JointRangeId.ToString()] 9511 9512 @property 9513 def Value(self) -> float: 9514 return self._Entity.Value 9515 9516 9517class JointRivetDesignResult(JointSelectionDesignResult): 9518 def __init__(self, jointRivetDesignResult: _api.JointRivetDesignResult): 9519 self._Entity = jointRivetDesignResult 9520 9521 @property 9522 def RivetId(self) -> int: 9523 return self._Entity.RivetId 9524 9525 @property 9526 def RivetDiameterId(self) -> int: 9527 return self._Entity.RivetDiameterId 9528 9529 9530class Environment(ABC): 9531 ''' 9532 Represents HyperX's execution environment (where HyperX is installed). 9533 ''' 9534 def __init__(self, environment: _api.Environment): 9535 self._Entity = environment 9536 9537 def SetLocation(location: str) -> None: 9538 return _api.Environment.SetLocation(location) 9539 9540 def Initialize() -> None: 9541 ''' 9542 Initialize the HyperX scripting environment. 9543 ''' 9544 return _api.Environment.Initialize() 9545 9546 9547class FailureCriterionSetting(FailureSetting): 9548 ''' 9549 Setting for a Failure Criteria. 9550 ''' 9551 def __init__(self, failureCriterionSetting: _api.FailureCriterionSetting): 9552 self._Entity = failureCriterionSetting 9553 9554 9555class FailureModeSetting(FailureSetting): 9556 ''' 9557 Setting for a Failure Mode. 9558 ''' 9559 def __init__(self, failureModeSetting: _api.FailureModeSetting): 9560 self._Entity = failureModeSetting 9561 9562 9563class HelperFunctions(ABC): 9564 def __init__(self, helperFunctions: _api.HelperFunctions): 9565 self._Entity = helperFunctions 9566 9567 def NullableSingle(input: float) -> float: 9568 return _api.HelperFunctions.NullableSingle(input) 9569 9570 9571class IBulkUpdatableEntity: 9572 def __init__(self, iBulkUpdatableEntity: _api.IBulkUpdatableEntity): 9573 self._Entity = iBulkUpdatableEntity 9574 9575 pass 9576 9577 9578class LaminatePlyData: 9579 ''' 9580 Per ply data for Laminate materials 9581 ''' 9582 def __init__(self, laminatePlyData: _api.LaminatePlyData): 9583 self._Entity = laminatePlyData 9584 9585 @property 9586 def MaterialId(self) -> int: 9587 return self._Entity.MaterialId 9588 9589 @property 9590 def PlyId(self) -> int: 9591 return self._Entity.PlyId 9592 9593 @property 9594 def PlyMaterialId(self) -> int: 9595 return self._Entity.PlyMaterialId 9596 9597 @property 9598 def PlyMaterialType(self) -> types.MaterialType: 9599 ''' 9600 Represents a material's type. 9601 ''' 9602 return types.MaterialType[self._Entity.PlyMaterialType.ToString()] 9603 9604 @property 9605 def Angle(self) -> float: 9606 return self._Entity.Angle 9607 9608 @property 9609 def Thickness(self) -> float: 9610 return self._Entity.Thickness 9611 9612 @property 9613 def IsFabric(self) -> bool: 9614 return self._Entity.IsFabric 9615 9616 @property 9617 def FamilyPlyId(self) -> int: 9618 return self._Entity.FamilyPlyId 9619 9620 @property 9621 def OriginalPlyId(self) -> int: 9622 return self._Entity.OriginalPlyId 9623 9624 @property 9625 def OriginalFamilyPlyId(self) -> int: 9626 return self._Entity.OriginalFamilyPlyId 9627 9628 @property 9629 def DisplaySequenceId(self) -> int: 9630 return self._Entity.DisplaySequenceId 9631 9632 @property 9633 def PlyStiffenerSubType(self) -> types.PlyStiffenerSubType: 9634 return types.PlyStiffenerSubType[self._Entity.PlyStiffenerSubType.ToString()] 9635 9636 @property 9637 def Object1(self) -> bool: 9638 return self._Entity.Object1 9639 9640 @property 9641 def Object2(self) -> bool: 9642 return self._Entity.Object2 9643 9644 @property 9645 def Object3(self) -> bool: 9646 return self._Entity.Object3 9647 9648 @property 9649 def IsInverted(self) -> bool: 9650 return self._Entity.IsInverted 9651 9652 @property 9653 def IsFullStructure(self) -> bool: 9654 return self._Entity.IsFullStructure 9655 9656 @property 9657 def UseTrueFiberDirection(self) -> bool: 9658 return self._Entity.UseTrueFiberDirection 9659 9660 @property 9661 def IsInFoot(self) -> bool: 9662 return self._Entity.IsInFoot 9663 9664 @property 9665 def IsInWeb(self) -> bool: 9666 return self._Entity.IsInWeb 9667 9668 @property 9669 def IsInCap(self) -> bool: 9670 return self._Entity.IsInCap 9671 9672 def SetMaterial(self, matId: int) -> bool: 9673 return self._Entity.SetMaterial(matId) 9674 9675 def SetAngle(self, angle: float) -> bool: 9676 return self._Entity.SetAngle(angle) 9677 9678 9679class Beam(Zone): 9680 def __init__(self, beam: _api.Beam): 9681 self._Entity = beam 9682 9683 @property 9684 def Length(self) -> float: 9685 return self._Entity.Length 9686 9687 @property 9688 def Phi(self) -> float: 9689 return self._Entity.Phi 9690 9691 @property 9692 def K1(self) -> float: 9693 return self._Entity.K1 9694 9695 @property 9696 def K2(self) -> float: 9697 return self._Entity.K2 9698 9699 @property 9700 def ReferencePlane(self) -> types.ReferencePlaneBeam: 9701 return types.ReferencePlaneBeam[self._Entity.ReferencePlane.ToString()] 9702 9703 @Phi.setter 9704 def Phi(self, value: float) -> None: 9705 self._Entity.Phi = value 9706 9707 @K1.setter 9708 def K1(self, value: float) -> None: 9709 self._Entity.K1 = value 9710 9711 @K2.setter 9712 def K2(self, value: float) -> None: 9713 self._Entity.K2 = value 9714 9715 @ReferencePlane.setter 9716 def ReferencePlane(self, value: types.ReferencePlaneBeam) -> None: 9717 self._Entity.ReferencePlane = _types.ReferencePlaneBeam(value.value) 9718 9719 9720class ZoneBulkUpdaterBase(BulkUpdaterBase): 9721 def __init__(self, zoneBulkUpdaterBase: _api.ZoneBulkUpdaterBase): 9722 self._Entity = zoneBulkUpdaterBase 9723 9724 9725class BeamBulkUpdater(ZoneBulkUpdaterBase): 9726 def __init__(self, beamBulkUpdater: _api.BeamBulkUpdater): 9727 self._Entity = beamBulkUpdater 9728 9729 def GetBulkUpdater(application: Application, items: list[Beam]) -> BeamBulkUpdater: 9730 itemsList = List[_api.Beam]() 9731 if items is not None: 9732 for thing in items: 9733 if thing is not None: 9734 itemsList.Add(thing._Entity) 9735 return BeamBulkUpdater(_api.BeamBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 9736 9737 9738class Panel(Zone): 9739 def __init__(self, panel: _api.Panel): 9740 self._Entity = panel 9741 9742 @property 9743 def Area(self) -> float: 9744 return self._Entity.Area 9745 9746 @property 9747 def ReferencePlane(self) -> types.ReferencePlanePanel: 9748 return types.ReferencePlanePanel[self._Entity.ReferencePlane.ToString()] 9749 9750 @property 9751 def AddedOffset(self) -> float: 9752 return self._Entity.AddedOffset 9753 9754 @property 9755 def YSpan(self) -> float: 9756 return self._Entity.YSpan 9757 9758 @property 9759 def IsCurved(self) -> bool: 9760 return self._Entity.IsCurved 9761 9762 @property 9763 def Radius(self) -> float: 9764 return self._Entity.Radius 9765 9766 @property 9767 def IsFullCylinder(self) -> bool: 9768 return self._Entity.IsFullCylinder 9769 9770 @property 9771 def BucklingMode(self) -> types.ZoneBucklingMode: 9772 return types.ZoneBucklingMode[self._Entity.BucklingMode.ToString()] 9773 9774 @property 9775 def PerformLocalPostbuckling(self) -> bool: 9776 return self._Entity.PerformLocalPostbuckling 9777 9778 @property 9779 def A11Required(self) -> float: 9780 return self._Entity.A11Required 9781 9782 @property 9783 def A22Required(self) -> float: 9784 return self._Entity.A22Required 9785 9786 @property 9787 def A33Required(self) -> float: 9788 return self._Entity.A33Required 9789 9790 @property 9791 def D11Required(self) -> float: 9792 return self._Entity.D11Required 9793 9794 @property 9795 def D22Required(self) -> float: 9796 return self._Entity.D22Required 9797 9798 @property 9799 def D33Required(self) -> float: 9800 return self._Entity.D33Required 9801 9802 @property 9803 def A11Auto(self) -> float: 9804 return self._Entity.A11Auto 9805 9806 @property 9807 def A22Auto(self) -> float: 9808 return self._Entity.A22Auto 9809 9810 @property 9811 def A33Auto(self) -> float: 9812 return self._Entity.A33Auto 9813 9814 @property 9815 def D11Auto(self) -> float: 9816 return self._Entity.D11Auto 9817 9818 @property 9819 def D22Auto(self) -> float: 9820 return self._Entity.D22Auto 9821 9822 @property 9823 def D33Auto(self) -> float: 9824 return self._Entity.D33Auto 9825 9826 @property 9827 def Ey(self) -> float: 9828 return self._Entity.Ey 9829 9830 @property 9831 def Kx(self) -> float: 9832 return self._Entity.Kx 9833 9834 @property 9835 def Ky(self) -> float: 9836 return self._Entity.Ky 9837 9838 @ReferencePlane.setter 9839 def ReferencePlane(self, value: types.ReferencePlanePanel) -> None: 9840 self._Entity.ReferencePlane = _types.ReferencePlanePanel(value.value) 9841 9842 @AddedOffset.setter 9843 def AddedOffset(self, value: float) -> None: 9844 self._Entity.AddedOffset = value 9845 9846 @YSpan.setter 9847 def YSpan(self, value: float) -> None: 9848 self._Entity.YSpan = value 9849 9850 @IsCurved.setter 9851 def IsCurved(self, value: bool) -> None: 9852 self._Entity.IsCurved = value 9853 9854 @Radius.setter 9855 def Radius(self, value: float) -> None: 9856 self._Entity.Radius = value 9857 9858 @IsFullCylinder.setter 9859 def IsFullCylinder(self, value: bool) -> None: 9860 self._Entity.IsFullCylinder = value 9861 9862 @BucklingMode.setter 9863 def BucklingMode(self, value: types.ZoneBucklingMode) -> None: 9864 self._Entity.BucklingMode = _types.ZoneBucklingMode(value.value) 9865 9866 @PerformLocalPostbuckling.setter 9867 def PerformLocalPostbuckling(self, value: bool) -> None: 9868 self._Entity.PerformLocalPostbuckling = value 9869 9870 @A11Required.setter 9871 def A11Required(self, value: float) -> None: 9872 self._Entity.A11Required = value 9873 9874 @A22Required.setter 9875 def A22Required(self, value: float) -> None: 9876 self._Entity.A22Required = value 9877 9878 @A33Required.setter 9879 def A33Required(self, value: float) -> None: 9880 self._Entity.A33Required = value 9881 9882 @D11Required.setter 9883 def D11Required(self, value: float) -> None: 9884 self._Entity.D11Required = value 9885 9886 @D22Required.setter 9887 def D22Required(self, value: float) -> None: 9888 self._Entity.D22Required = value 9889 9890 @D33Required.setter 9891 def D33Required(self, value: float) -> None: 9892 self._Entity.D33Required = value 9893 9894 @Ey.setter 9895 def Ey(self, value: float) -> None: 9896 self._Entity.Ey = value 9897 9898 @Kx.setter 9899 def Kx(self, value: float) -> None: 9900 self._Entity.Kx = value 9901 9902 @Ky.setter 9903 def Ky(self, value: float) -> None: 9904 self._Entity.Ky = value 9905 9906 9907class PanelBulkUpdater(ZoneBulkUpdaterBase): 9908 def __init__(self, panelBulkUpdater: _api.PanelBulkUpdater): 9909 self._Entity = panelBulkUpdater 9910 9911 def GetBulkUpdater(application: Application, items: list[Panel]) -> PanelBulkUpdater: 9912 itemsList = List[_api.Panel]() 9913 if items is not None: 9914 for thing in items: 9915 if thing is not None: 9916 itemsList.Add(thing._Entity) 9917 return PanelBulkUpdater(_api.PanelBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 9918 9919 9920class PanelSegmentBulkUpdater(ZoneBulkUpdaterBase): 9921 def __init__(self, panelSegmentBulkUpdater: _api.PanelSegmentBulkUpdater): 9922 self._Entity = panelSegmentBulkUpdater 9923 9924 def GetBulkUpdater(application: Application, items: list[PanelSegment]) -> PanelSegmentBulkUpdater: 9925 itemsList = List[_api.PanelSegment]() 9926 if items is not None: 9927 for thing in items: 9928 if thing is not None: 9929 itemsList.Add(thing._Entity) 9930 return PanelSegmentBulkUpdater(_api.PanelSegmentBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 9931 9932 9933class ZoneBulkUpdater(ZoneBulkUpdaterBase): 9934 def __init__(self, zoneBulkUpdater: _api.ZoneBulkUpdater): 9935 self._Entity = zoneBulkUpdater 9936 9937 def GetBulkUpdater(application: Application, items: list[Zone]) -> ZoneBulkUpdater: 9938 itemsList = List[_api.Zone]() 9939 if items is not None: 9940 for thing in items: 9941 if thing is not None: 9942 itemsList.Add(thing._Entity) 9943 return ZoneBulkUpdater(_api.ZoneBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
25class AnalysisResultToReturn(Enum): 26 ''' 27 Used to specify which analysis result to return. 28 ''' 29 Limit = 1 30 Ultimate = 2 31 Minimum = 3
Used to specify which analysis result to return.
Inherited Members
- enum.Enum
- name
- value
33class CollectionModificationStatus(Enum): 34 ''' 35 Indicates whether a collection was manipulated successfully. 36 ''' 37 Success = 1 38 DuplicateIdFailure = 2 39 EntityMissingAddFailure = 3 40 EntityMissingRemovalFailure = 4 41 FemConnectionFailure = 5
Indicates whether a collection was manipulated successfully.
Inherited Members
- enum.Enum
- name
- value
Inherited Members
- enum.Enum
- name
- value
48class MaterialCreationStatus(Enum): 49 ''' 50 Indicates whether a material was created successfully. 51 If not, this indicates why the material was not created. 52 ''' 53 Success = 1 54 DuplicateNameFailure = 2 55 DuplicateFemIdFailure = 3 56 MissingMaterialToCopy = 4
Indicates whether a material was created successfully. If not, this indicates why the material was not created.
Inherited Members
- enum.Enum
- name
- value
Inherited Members
- enum.Enum
- name
- value
63class DbLengthUnit(Enum): 64 Inches = 1 65 Feet = 2 66 Meters = 3 67 Centimeters = 4 68 Millimeters = 5
Inherited Members
- enum.Enum
- name
- value
70class DbMassUnit(Enum): 71 Pounds = 1 72 Kilograms = 2 73 Slinches = 4 74 Slugs = 5 75 Megagrams = 6
Inherited Members
- enum.Enum
- name
- value
Inherited Members
- enum.Enum
- name
- value
83class ProjectCreationStatus(Enum): 84 ''' 85 Indicates whether a project was created successfully. 86 If not, this indicates why the project was not created. 87 ''' 88 Success = 1 89 Failure = 2 90 DuplicateNameFailure = 3
Indicates whether a project was created successfully. If not, this indicates why the project was not created.
Inherited Members
- enum.Enum
- name
- value
92class ProjectDeletionStatus(Enum): 93 ''' 94 Indicates whether a project was deleted successfully. 95 If not, this indicates why the project was not deleted. 96 ''' 97 Success = 1 98 Failure = 2 99 ProjectDoesNotExistFailure = 3 100 ActiveProjectFailure = 4
Indicates whether a project was deleted successfully. If not, this indicates why the project was not deleted.
Inherited Members
- enum.Enum
- name
- value
Inherited Members
- enum.Enum
- name
- value
107class PropertyAssignmentStatus(Enum): 108 Success = 1 109 Failure = 2 110 FailureCollectionAssignment = 3 111 PropertyIsNull = 4 112 PropertyNotFoundInDb = 5 113 EmptyCollection = 6 114 IncompatiblePropertyAssignment = 7 115 EntityDoesNotExist = 8
Inherited Members
- enum.Enum
- name
- value
117class RundeckBulkUpdateStatus(Enum): 118 NoRundecksUpdated = 0 119 Success = 1 120 InputFilePathDoesNotExist = 2 121 ResultFilePathDoesNotExist = 3 122 InputFilePathAlreadyExists = 4 123 ResultFilePathAlreadyExists = 5 124 InvalidPathCount = 6
Inherited Members
- enum.Enum
- name
- value
126class RundeckCreationStatus(Enum): 127 Success = 1 128 InputFilePathAlreadyExists = 2 129 ResultFilePathAlreadyExists = 3
Inherited Members
- enum.Enum
- name
- value
131class RundeckRemoveStatus(Enum): 132 Success = 1 133 InvalidId = 2 134 CannotRemoveLastRundeck = 3 135 CannotDeletePrimaryRundeck = 4 136 RundeckNotFound = 5
Inherited Members
- enum.Enum
- name
- value
138class RundeckUpdateStatus(Enum): 139 Success = 1 140 InvalidId = 2 141 IdDoesNotExist = 3 142 RundeckAlreadyPrimary = 4 143 InputPathInUse = 5 144 ResultPathInUse = 6 145 RundeckCommitFailure = 7 146 InputPathDoesNotExist = 8 147 ResultPathDoesNotExist = 9
Inherited Members
- enum.Enum
- name
- value
149class ZoneCreationStatus(Enum): 150 ''' 151 Indicates whether a zone was created successfully. 152 If not, this indicates why the zone was not created. 153 ''' 154 Success = 1 155 DuplicateNameFailure = 2 156 InvalidFamilyCategory = 3
Indicates whether a zone was created successfully. If not, this indicates why the zone was not created.
Inherited Members
- enum.Enum
- name
- value
158class ZoneIdUpdateStatus(Enum): 159 Success = 1 160 DuplicateIdFailure = 2 161 IdOutOfRangeError = 3
Inherited Members
- enum.Enum
- name
- value
163class UnitSystem(Enum): 164 ''' 165 Unit system specified when starting a scripting Application. 166 ''' 167 English = 1 168 SI = 2
Unit system specified when starting a scripting Application.
Inherited Members
- enum.Enum
- name
- value
170class IdEntity(ABC): 171 ''' 172 Represents an entity with an ID. 173 ''' 174 def __init__(self, idEntity: _api.IdEntity): 175 self._Entity = idEntity 176 177 @property 178 def Id(self) -> int: 179 return self._Entity.Id
Represents an entity with an ID.
182class IdNameEntity(IdEntity): 183 ''' 184 Represents an entity with an ID and Name. 185 ''' 186 def __init__(self, idNameEntity: _api.IdNameEntity): 187 self._Entity = idNameEntity 188 189 @property 190 def Name(self) -> str: 191 return self._Entity.Name
Represents an entity with an ID and Name.
193class AnalysisDefinition(IdNameEntity): 194 def __init__(self, analysisDefinition: _api.AnalysisDefinition): 195 self._Entity = analysisDefinition 196 197 @property 198 def AnalysisId(self) -> int: 199 return self._Entity.AnalysisId 200 201 @property 202 def Description(self) -> str: 203 return self._Entity.Description
Represents an entity with an ID and Name.
Inherited Members
206class Margin: 207 ''' 208 Represents a Margin result. 209 ''' 210 def __init__(self, margin: _api.Margin): 211 self._Entity = margin 212 213 @property 214 def AdjustedMargin(self) -> float: 215 return self._Entity.AdjustedMargin 216 217 @property 218 def IsFailureCode(self) -> bool: 219 return self._Entity.IsFailureCode 220 221 @property 222 def IsInformationalCode(self) -> bool: 223 return self._Entity.IsInformationalCode 224 225 @property 226 def MarginCode(self) -> types.MarginCode: 227 return types.MarginCode[self._Entity.MarginCode.ToString()]
Represents a Margin result.
230class AnalysisResult(ABC): 231 ''' 232 Contains result information for an analysis 233 ''' 234 def __init__(self, analysisResult: _api.AnalysisResult): 235 self._Entity = analysisResult 236 237 @property 238 def LimitUltimate(self) -> types.LimitUltimate: 239 ''' 240 Limit vs Ultimate loads. 241 ''' 242 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()] 243 244 @property 245 def LoadCaseId(self) -> int: 246 return self._Entity.LoadCaseId 247 248 @property 249 def Margin(self) -> Margin: 250 ''' 251 Represents a Margin result. 252 ''' 253 result = self._Entity.Margin 254 return Margin(result) if result is not None else None 255 256 @property 257 def AnalysisDefinition(self) -> AnalysisDefinition: 258 result = self._Entity.AnalysisDefinition 259 return AnalysisDefinition(result) if result is not None else None
Contains result information for an analysis
237 @property 238 def LimitUltimate(self) -> types.LimitUltimate: 239 ''' 240 Limit vs Ultimate loads. 241 ''' 242 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()]
Limit vs Ultimate loads.
248 @property 249 def Margin(self) -> Margin: 250 ''' 251 Represents a Margin result. 252 ''' 253 result = self._Entity.Margin 254 return Margin(result) if result is not None else None
Represents a Margin result.
262class JointAnalysisResult(AnalysisResult): 263 def __init__(self, jointAnalysisResult: _api.JointAnalysisResult): 264 self._Entity = jointAnalysisResult 265 266 @property 267 def ObjectId(self) -> types.JointObject: 268 ''' 269 Enum identifying the possible entities within a joint 270 ''' 271 return types.JointObject[self._Entity.ObjectId.ToString()]
Contains result information for an analysis
266 @property 267 def ObjectId(self) -> types.JointObject: 268 ''' 269 Enum identifying the possible entities within a joint 270 ''' 271 return types.JointObject[self._Entity.ObjectId.ToString()]
Enum identifying the possible entities within a joint
Inherited Members
274class ZoneAnalysisConceptResult(AnalysisResult): 275 def __init__(self, zoneAnalysisConceptResult: _api.ZoneAnalysisConceptResult): 276 self._Entity = zoneAnalysisConceptResult 277 278 @property 279 def ConceptId(self) -> types.FamilyConceptUID: 280 return types.FamilyConceptUID[self._Entity.ConceptId.ToString()]
Contains result information for an analysis
Inherited Members
283class ZoneAnalysisObjectResult(AnalysisResult): 284 def __init__(self, zoneAnalysisObjectResult: _api.ZoneAnalysisObjectResult): 285 self._Entity = zoneAnalysisObjectResult 286 287 @property 288 def ObjectId(self) -> types.FamilyObjectUID: 289 return types.FamilyObjectUID[self._Entity.ObjectId.ToString()]
Contains result information for an analysis
Inherited Members
292class AssignableProperty(IdNameEntity): 293 def __init__(self, assignableProperty: _api.AssignableProperty): 294 self._Entity = assignableProperty
Represents an entity with an ID and Name.
Inherited Members
297class AssignablePropertyWithFamilyCategory(AssignableProperty): 298 def __init__(self, assignablePropertyWithFamilyCategory: _api.AssignablePropertyWithFamilyCategory): 299 self._Entity = assignablePropertyWithFamilyCategory 300 301 @property 302 def FamilyCategory(self) -> types.FamilyCategory: 303 return types.FamilyCategory[self._Entity.FamilyCategory.ToString()]
Represents an entity with an ID and Name.
Inherited Members
306class FailureObjectGroup(IdNameEntity): 307 def __init__(self, failureObjectGroup: _api.FailureObjectGroup): 308 self._Entity = failureObjectGroup 309 310 @property 311 def ObjectGroup(self) -> types.ObjectGroup: 312 return types.ObjectGroup[self._Entity.ObjectGroup.ToString()] 313 314 @property 315 def IsEnabled(self) -> bool: 316 return self._Entity.IsEnabled 317 318 @property 319 def LimitUltimate(self) -> types.LimitUltimate: 320 ''' 321 Limit vs Ultimate loads. 322 ''' 323 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()] 324 325 @property 326 def RequiredMargin(self) -> float: 327 return self._Entity.RequiredMargin 328 329 @IsEnabled.setter 330 def IsEnabled(self, value: bool) -> None: 331 self._Entity.IsEnabled = value 332 333 @LimitUltimate.setter 334 def LimitUltimate(self, value: types.LimitUltimate) -> None: 335 self._Entity.LimitUltimate = _types.LimitUltimate(value.value) 336 337 @RequiredMargin.setter 338 def RequiredMargin(self, value: float) -> None: 339 self._Entity.RequiredMargin = value
Represents an entity with an ID and Name.
318 @property 319 def LimitUltimate(self) -> types.LimitUltimate: 320 ''' 321 Limit vs Ultimate loads. 322 ''' 323 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()]
Limit vs Ultimate loads.
Inherited Members
342class FailureSetting(IdNameEntity): 343 ''' 344 Setting for a Failure Mode or a Failure Criteria. 345 ''' 346 def __init__(self, failureSetting: _api.FailureSetting): 347 self._Entity = failureSetting 348 349 @property 350 def CategoryId(self) -> int: 351 return self._Entity.CategoryId 352 353 @property 354 def DataType(self) -> types.UserConstantDataType: 355 return types.UserConstantDataType[self._Entity.DataType.ToString()] 356 357 @property 358 def DefaultValue(self) -> str: 359 return self._Entity.DefaultValue 360 361 @property 362 def Description(self) -> str: 363 return self._Entity.Description 364 365 @property 366 def EnumValues(self) -> dict[int, str]: 367 enumValuesDict = {} 368 for kvp in self._Entity.EnumValues: 369 enumValuesDict[int(kvp.Key)] = str(kvp.Value) 370 371 return enumValuesDict 372 373 @property 374 def PackageId(self) -> int: 375 return self._Entity.PackageId 376 377 @property 378 def PackageSettingId(self) -> int: 379 return self._Entity.PackageSettingId 380 381 @property 382 def UID(self) -> Guid: 383 return self._Entity.UID 384 385 @property 386 def Value(self) -> str: 387 return self._Entity.Value 388 389 def SetStringValue(self, value: str) -> None: 390 return self._Entity.SetStringValue(value) 391 392 def SetIntValue(self, value: int) -> None: 393 return self._Entity.SetIntValue(value) 394 395 def SetFloatValue(self, value: float) -> None: 396 return self._Entity.SetFloatValue(value) 397 398 def SetBoolValue(self, value: bool) -> None: 399 return self._Entity.SetBoolValue(value) 400 401 def SetSelectionValue(self, index: int) -> None: 402 return self._Entity.SetSelectionValue(index)
Setting for a Failure Mode or a Failure Criteria.
Inherited Members
405class IdEntityCol(Generic[T], ABC): 406 def __init__(self, idEntityCol: _api.IdEntityCol): 407 self._Entity = idEntityCol 408 409 @property 410 def IdEntityColList(self) -> tuple[IdEntity]: 411 if self._Entity.Count() <= 0: 412 return () 413 thisClass = type(self._Entity._items[0]).__name__ 414 givenClass = IdEntity 415 for subclass in IdEntity.__subclasses__(): 416 if subclass.__name__ == thisClass: 417 givenClass = subclass 418 return tuple([givenClass(idEntityCol) for idEntityCol in self._Entity]) 419 420 @property 421 def Ids(self) -> tuple[int]: 422 return tuple([int(int32) for int32 in self._Entity.Ids]) 423 424 def Contains(self, id: int) -> bool: 425 return self._Entity.Contains(id) 426 427 def Count(self) -> int: 428 return self._Entity.Count() 429 430 def Get(self, id: int) -> T: 431 return self._Entity.Get(id) 432 433 def __getitem__(self, index: int): 434 return self.IdEntityColList[index] 435 436 def __iter__(self): 437 yield from self.IdEntityColList 438 439 def __len__(self): 440 return len(self.IdEntityColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
409 @property 410 def IdEntityColList(self) -> tuple[IdEntity]: 411 if self._Entity.Count() <= 0: 412 return () 413 thisClass = type(self._Entity._items[0]).__name__ 414 givenClass = IdEntity 415 for subclass in IdEntity.__subclasses__(): 416 if subclass.__name__ == thisClass: 417 givenClass = subclass 418 return tuple([givenClass(idEntityCol) for idEntityCol in self._Entity])
443class IdNameEntityCol(IdEntityCol, Generic[T]): 444 def __init__(self, idNameEntityCol: _api.IdNameEntityCol): 445 self._Entity = idNameEntityCol 446 self._CollectedClass = T 447 448 @property 449 def IdNameEntityColList(self) -> tuple[T]: 450 if self._Entity.Count() <= 0: 451 return () 452 thisClass = type(self._Entity._items[0]).__name__ 453 givenClass = T 454 for subclass in T.__subclasses__(): 455 if subclass.__name__ == thisClass: 456 givenClass = subclass 457 return tuple([givenClass(idNameEntityCol) for idNameEntityCol in self._Entity]) 458 459 @property 460 def Names(self) -> tuple[str]: 461 return tuple([str(string) for string in self._Entity.Names]) 462 463 @overload 464 def Get(self, name: str) -> T: ... 465 466 @overload 467 def Get(self, id: int) -> T: ... 468 469 def Get(self, item1 = None) -> T: 470 if isinstance(item1, str): 471 return self._Entity.Get(item1) 472 473 if isinstance(item1, int): 474 return super().Get(item1) 475 476 return self._Entity.Get(item1) 477 478 def __getitem__(self, index: int): 479 return self.IdNameEntityColList[index] 480 481 def __iter__(self): 482 yield from self.IdNameEntityColList 483 484 def __len__(self): 485 return len(self.IdNameEntityColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
448 @property 449 def IdNameEntityColList(self) -> tuple[T]: 450 if self._Entity.Count() <= 0: 451 return () 452 thisClass = type(self._Entity._items[0]).__name__ 453 givenClass = T 454 for subclass in T.__subclasses__(): 455 if subclass.__name__ == thisClass: 456 givenClass = subclass 457 return tuple([givenClass(idNameEntityCol) for idNameEntityCol in self._Entity])
Inherited Members
488class FailureObjectGroupCol(IdNameEntityCol[FailureObjectGroup]): 489 def __init__(self, failureObjectGroupCol: _api.FailureObjectGroupCol): 490 self._Entity = failureObjectGroupCol 491 self._CollectedClass = FailureObjectGroup 492 493 @property 494 def FailureObjectGroupColList(self) -> tuple[FailureObjectGroup]: 495 return tuple([FailureObjectGroup(failureObjectGroupCol) for failureObjectGroupCol in self._Entity]) 496 497 @overload 498 def Get(self, objectGroup: types.ObjectGroup) -> FailureObjectGroup: ... 499 500 @overload 501 def Get(self, name: str) -> FailureObjectGroup: ... 502 503 @overload 504 def Get(self, id: int) -> FailureObjectGroup: ... 505 506 def Get(self, item1 = None) -> FailureObjectGroup: 507 if isinstance(item1, types.ObjectGroup): 508 return FailureObjectGroup(self._Entity.Get(_types.ObjectGroup(item1.value))) 509 510 if isinstance(item1, str): 511 return FailureObjectGroup(super().Get(item1)) 512 513 if isinstance(item1, int): 514 return FailureObjectGroup(super().Get(item1)) 515 516 return self._Entity.Get(_types.ObjectGroup(item1.value)) 517 518 def __getitem__(self, index: int): 519 return self.FailureObjectGroupColList[index] 520 521 def __iter__(self): 522 yield from self.FailureObjectGroupColList 523 524 def __len__(self): 525 return len(self.FailureObjectGroupColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
506 def Get(self, item1 = None) -> FailureObjectGroup: 507 if isinstance(item1, types.ObjectGroup): 508 return FailureObjectGroup(self._Entity.Get(_types.ObjectGroup(item1.value))) 509 510 if isinstance(item1, str): 511 return FailureObjectGroup(super().Get(item1)) 512 513 if isinstance(item1, int): 514 return FailureObjectGroup(super().Get(item1)) 515 516 return self._Entity.Get(_types.ObjectGroup(item1.value))
Inherited Members
528class FailureSettingCol(IdNameEntityCol[FailureSetting]): 529 def __init__(self, failureSettingCol: _api.FailureSettingCol): 530 self._Entity = failureSettingCol 531 self._CollectedClass = FailureSetting 532 533 @property 534 def FailureSettingColList(self) -> tuple[FailureSetting]: 535 return tuple([FailureSetting(failureSettingCol) for failureSettingCol in self._Entity]) 536 537 @overload 538 def Get(self, name: str) -> FailureSetting: ... 539 540 @overload 541 def Get(self, id: int) -> FailureSetting: ... 542 543 def Get(self, item1 = None) -> FailureSetting: 544 if isinstance(item1, str): 545 return FailureSetting(super().Get(item1)) 546 547 if isinstance(item1, int): 548 return FailureSetting(super().Get(item1)) 549 550 return self._Entity.Get(item1) 551 552 def __getitem__(self, index: int): 553 return self.FailureSettingColList[index] 554 555 def __iter__(self): 556 yield from self.FailureSettingColList 557 558 def __len__(self): 559 return len(self.FailureSettingColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
562class FailureCriterion(IdNameEntity): 563 def __init__(self, failureCriterion: _api.FailureCriterion): 564 self._Entity = failureCriterion 565 566 @property 567 def Description(self) -> str: 568 return self._Entity.Description 569 570 @property 571 def IsEnabled(self) -> bool: 572 return self._Entity.IsEnabled 573 574 @property 575 def LimitUltimate(self) -> types.LimitUltimate: 576 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()] 577 578 @property 579 def ObjectGroups(self) -> FailureObjectGroupCol: 580 result = self._Entity.ObjectGroups 581 return FailureObjectGroupCol(result) if result is not None else None 582 583 @property 584 def RequiredMargin(self) -> float: 585 return self._Entity.RequiredMargin 586 587 @property 588 def Settings(self) -> FailureSettingCol: 589 result = self._Entity.Settings 590 return FailureSettingCol(result) if result is not None else None 591 592 @IsEnabled.setter 593 def IsEnabled(self, value: bool) -> None: 594 self._Entity.IsEnabled = value 595 596 @LimitUltimate.setter 597 def LimitUltimate(self, value: types.LimitUltimate) -> None: 598 self._Entity.LimitUltimate = _types.LimitUltimate(value.value) 599 600 @RequiredMargin.setter 601 def RequiredMargin(self, value: float) -> None: 602 self._Entity.RequiredMargin = value
Represents an entity with an ID and Name.
Inherited Members
605class IdNameEntityRenameable(IdNameEntity): 606 def __init__(self, idNameEntityRenameable: _api.IdNameEntityRenameable): 607 self._Entity = idNameEntityRenameable 608 609 def Rename(self, name: str) -> None: 610 return self._Entity.Rename(name)
Represents an entity with an ID and Name.
Inherited Members
613class FailureCriterionCol(IdNameEntityCol[FailureCriterion]): 614 def __init__(self, failureCriterionCol: _api.FailureCriterionCol): 615 self._Entity = failureCriterionCol 616 self._CollectedClass = FailureCriterion 617 618 @property 619 def FailureCriterionColList(self) -> tuple[FailureCriterion]: 620 return tuple([FailureCriterion(failureCriterionCol) for failureCriterionCol in self._Entity]) 621 622 @overload 623 def Get(self, name: str) -> FailureCriterion: ... 624 625 @overload 626 def Get(self, id: int) -> FailureCriterion: ... 627 628 def Get(self, item1 = None) -> FailureCriterion: 629 if isinstance(item1, str): 630 return FailureCriterion(super().Get(item1)) 631 632 if isinstance(item1, int): 633 return FailureCriterion(super().Get(item1)) 634 635 return self._Entity.Get(item1) 636 637 def __getitem__(self, index: int): 638 return self.FailureCriterionColList[index] 639 640 def __iter__(self): 641 yield from self.FailureCriterionColList 642 643 def __len__(self): 644 return len(self.FailureCriterionColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
647class FailureMode(IdNameEntityRenameable): 648 def __init__(self, failureMode: _api.FailureMode): 649 self._Entity = failureMode 650 651 @property 652 def AnalysisCategoryId(self) -> int: 653 return self._Entity.AnalysisCategoryId 654 655 @property 656 def AnalysisCategoryName(self) -> str: 657 return self._Entity.AnalysisCategoryName 658 659 @property 660 def Criteria(self) -> FailureCriterionCol: 661 result = self._Entity.Criteria 662 return FailureCriterionCol(result) if result is not None else None 663 664 @property 665 def Settings(self) -> FailureSettingCol: 666 result = self._Entity.Settings 667 return FailureSettingCol(result) if result is not None else None
Represents an entity with an ID and Name.
Inherited Members
670class FailureModeCol(IdNameEntityCol[FailureMode]): 671 def __init__(self, failureModeCol: _api.FailureModeCol): 672 self._Entity = failureModeCol 673 self._CollectedClass = FailureMode 674 675 @property 676 def FailureModeColList(self) -> tuple[FailureMode]: 677 return tuple([FailureMode(failureModeCol) for failureModeCol in self._Entity]) 678 679 @overload 680 def CreateFailureMode(self, failureModeCategoryId: int, name: str = None) -> FailureMode: ... 681 682 @overload 683 def CreateFailureMode(self, failureModeCategory: str, name: str = None) -> FailureMode: ... 684 685 @overload 686 def Get(self, name: str) -> FailureMode: ... 687 688 @overload 689 def Get(self, id: int) -> FailureMode: ... 690 691 def CreateFailureMode(self, item1 = None, item2 = None) -> FailureMode: 692 if isinstance(item1, int) and isinstance(item2, str): 693 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 694 695 if isinstance(item1, str) and isinstance(item2, str): 696 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 697 698 return self._Entity.CreateFailureMode(item1, item2) 699 700 def Get(self, item1 = None) -> FailureMode: 701 if isinstance(item1, str): 702 return FailureMode(super().Get(item1)) 703 704 if isinstance(item1, int): 705 return FailureMode(super().Get(item1)) 706 707 return self._Entity.Get(item1) 708 709 def __getitem__(self, index: int): 710 return self.FailureModeColList[index] 711 712 def __iter__(self): 713 yield from self.FailureModeColList 714 715 def __len__(self): 716 return len(self.FailureModeColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
691 def CreateFailureMode(self, item1 = None, item2 = None) -> FailureMode: 692 if isinstance(item1, int) and isinstance(item2, str): 693 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 694 695 if isinstance(item1, str) and isinstance(item2, str): 696 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 697 698 return self._Entity.CreateFailureMode(item1, item2)
Inherited Members
719class AnalysisProperty(AssignablePropertyWithFamilyCategory): 720 def __init__(self, analysisProperty: _api.AnalysisProperty): 721 self._Entity = analysisProperty 722 723 @property 724 def FailureModes(self) -> FailureModeCol: 725 result = self._Entity.FailureModes 726 return FailureModeCol(result) if result is not None else None 727 728 @overload 729 def AddFailureMode(self, id: int) -> None: ... 730 731 @overload 732 def AddFailureMode(self, ids: tuple[int]) -> None: ... 733 734 @overload 735 def RemoveFailureMode(self, id: int) -> None: ... 736 737 @overload 738 def RemoveFailureMode(self, ids: tuple[int]) -> None: ... 739 740 def AddFailureMode(self, item1 = None) -> None: 741 if isinstance(item1, int): 742 return self._Entity.AddFailureMode(item1) 743 744 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 745 idsList = MakeCSharpIntList(item1) 746 idsEnumerable = IEnumerable(idsList) 747 return self._Entity.AddFailureMode(idsEnumerable) 748 749 return self._Entity.AddFailureMode(item1) 750 751 def RemoveFailureMode(self, item1 = None) -> None: 752 if isinstance(item1, int): 753 return self._Entity.RemoveFailureMode(item1) 754 755 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 756 idsList = MakeCSharpIntList(item1) 757 idsEnumerable = IEnumerable(idsList) 758 return self._Entity.RemoveFailureMode(idsEnumerable) 759 760 return self._Entity.RemoveFailureMode(item1)
Represents an entity with an ID and Name.
740 def AddFailureMode(self, item1 = None) -> None: 741 if isinstance(item1, int): 742 return self._Entity.AddFailureMode(item1) 743 744 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 745 idsList = MakeCSharpIntList(item1) 746 idsEnumerable = IEnumerable(idsList) 747 return self._Entity.AddFailureMode(idsEnumerable) 748 749 return self._Entity.AddFailureMode(item1)
751 def RemoveFailureMode(self, item1 = None) -> None: 752 if isinstance(item1, int): 753 return self._Entity.RemoveFailureMode(item1) 754 755 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 756 idsList = MakeCSharpIntList(item1) 757 idsEnumerable = IEnumerable(idsList) 758 return self._Entity.RemoveFailureMode(idsEnumerable) 759 760 return self._Entity.RemoveFailureMode(item1)
Inherited Members
763class DesignProperty(AssignablePropertyWithFamilyCategory): 764 def __init__(self, designProperty: _api.DesignProperty): 765 self._Entity = designProperty 766 767 def Copy(self, newName: str = None) -> DesignProperty: 768 result = self._Entity.Copy(newName) 769 thisClass = type(result).__name__ 770 givenClass = DesignProperty 771 for subclass in DesignProperty.__subclasses__(): 772 if subclass.__name__ == thisClass: 773 givenClass = subclass 774 return givenClass(result)
Represents an entity with an ID and Name.
767 def Copy(self, newName: str = None) -> DesignProperty: 768 result = self._Entity.Copy(newName) 769 thisClass = type(result).__name__ 770 givenClass = DesignProperty 771 for subclass in DesignProperty.__subclasses__(): 772 if subclass.__name__ == thisClass: 773 givenClass = subclass 774 return givenClass(result)
Inherited Members
777class LoadProperty(AssignableProperty): 778 def __init__(self, loadProperty: _api.LoadProperty): 779 self._Entity = loadProperty 780 781 @property 782 def Category(self) -> types.FamilyCategory: 783 return types.FamilyCategory[self._Entity.Category.ToString()] 784 785 @property 786 def Type(self) -> types.LoadPropertyType: 787 return types.LoadPropertyType[self._Entity.Type.ToString()] 788 789 @property 790 def IsZeroCurvature(self) -> bool: 791 return self._Entity.IsZeroCurvature 792 793 @property 794 def ModificationDate(self) -> DateTime: 795 return self._Entity.ModificationDate
Represents an entity with an ID and Name.
Inherited Members
798class DesignLoadSubcase(IdNameEntity): 799 def __init__(self, designLoadSubcase: _api.DesignLoadSubcase): 800 self._Entity = designLoadSubcase 801 802 @property 803 def RunDeckId(self) -> int: 804 return self._Entity.RunDeckId 805 806 @property 807 def IsThermal(self) -> bool: 808 return self._Entity.IsThermal 809 810 @property 811 def IsEditable(self) -> bool: 812 return self._Entity.IsEditable 813 814 @property 815 def Description(self) -> str: 816 return self._Entity.Description 817 818 @property 819 def ModificationDate(self) -> DateTime: 820 return self._Entity.ModificationDate 821 822 @property 823 def NastranSubcaseId(self) -> int: 824 return self._Entity.NastranSubcaseId 825 826 @property 827 def NastranLoadId(self) -> int: 828 return self._Entity.NastranLoadId 829 830 @property 831 def NastranSpcId(self) -> int: 832 return self._Entity.NastranSpcId 833 834 @property 835 def AbaqusStepName(self) -> str: 836 return self._Entity.AbaqusStepName 837 838 @property 839 def AbaqusLoadCaseName(self) -> str: 840 return self._Entity.AbaqusLoadCaseName 841 842 @property 843 def AbaqusStepTime(self) -> float: 844 return self._Entity.AbaqusStepTime 845 846 @property 847 def RunDeckOrder(self) -> int: 848 return self._Entity.RunDeckOrder 849 850 @property 851 def SolutionType(self) -> types.FeaSolutionType: 852 return types.FeaSolutionType[self._Entity.SolutionType.ToString()]
Represents an entity with an ID and Name.
Inherited Members
855class DesignLoadSubcaseMultiplier(IdNameEntity): 856 def __init__(self, designLoadSubcaseMultiplier: _api.DesignLoadSubcaseMultiplier): 857 self._Entity = designLoadSubcaseMultiplier 858 859 @property 860 def LimitFactor(self) -> float: 861 return self._Entity.LimitFactor 862 863 @property 864 def Subcase(self) -> DesignLoadSubcase: 865 result = self._Entity.Subcase 866 return DesignLoadSubcase(result) if result is not None else None 867 868 @property 869 def UltimateFactor(self) -> float: 870 return self._Entity.UltimateFactor 871 872 @property 873 def Value(self) -> float: 874 return self._Entity.Value
Represents an entity with an ID and Name.
Inherited Members
877class DesignLoadSubcaseTemperature(IdNameEntity): 878 def __init__(self, designLoadSubcaseTemperature: _api.DesignLoadSubcaseTemperature): 879 self._Entity = designLoadSubcaseTemperature 880 881 @property 882 def HasTemperatureSubcase(self) -> bool: 883 return self._Entity.HasTemperatureSubcase 884 885 @property 886 def Subcase(self) -> DesignLoadSubcase: 887 result = self._Entity.Subcase 888 return DesignLoadSubcase(result) if result is not None else None 889 890 @property 891 def TemperatureChoiceType(self) -> types.TemperatureChoiceType: 892 ''' 893 Load Case Setting selection for analysis and initial temperature. 894 ''' 895 return types.TemperatureChoiceType[self._Entity.TemperatureChoiceType.ToString()] 896 897 @property 898 def Value(self) -> float: 899 return self._Entity.Value
Represents an entity with an ID and Name.
890 @property 891 def TemperatureChoiceType(self) -> types.TemperatureChoiceType: 892 ''' 893 Load Case Setting selection for analysis and initial temperature. 894 ''' 895 return types.TemperatureChoiceType[self._Entity.TemperatureChoiceType.ToString()]
Load Case Setting selection for analysis and initial temperature.
Inherited Members
902class DesignLoadSubcaseMultiplierCol(IdNameEntityCol[DesignLoadSubcaseMultiplier]): 903 def __init__(self, designLoadSubcaseMultiplierCol: _api.DesignLoadSubcaseMultiplierCol): 904 self._Entity = designLoadSubcaseMultiplierCol 905 self._CollectedClass = DesignLoadSubcaseMultiplier 906 907 @property 908 def DesignLoadSubcaseMultiplierColList(self) -> tuple[DesignLoadSubcaseMultiplier]: 909 return tuple([DesignLoadSubcaseMultiplier(designLoadSubcaseMultiplierCol) for designLoadSubcaseMultiplierCol in self._Entity]) 910 911 @overload 912 def Get(self, name: str) -> DesignLoadSubcaseMultiplier: ... 913 914 @overload 915 def Get(self, id: int) -> DesignLoadSubcaseMultiplier: ... 916 917 def Get(self, item1 = None) -> DesignLoadSubcaseMultiplier: 918 if isinstance(item1, str): 919 return DesignLoadSubcaseMultiplier(super().Get(item1)) 920 921 if isinstance(item1, int): 922 return DesignLoadSubcaseMultiplier(super().Get(item1)) 923 924 return self._Entity.Get(item1) 925 926 def __getitem__(self, index: int): 927 return self.DesignLoadSubcaseMultiplierColList[index] 928 929 def __iter__(self): 930 yield from self.DesignLoadSubcaseMultiplierColList 931 932 def __len__(self): 933 return len(self.DesignLoadSubcaseMultiplierColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
936class DesignLoad(IdNameEntity): 937 def __init__(self, designLoad: _api.DesignLoad): 938 self._Entity = designLoad 939 940 @property 941 def AnalysisTemperature(self) -> DesignLoadSubcaseTemperature: 942 result = self._Entity.AnalysisTemperature 943 return DesignLoadSubcaseTemperature(result) if result is not None else None 944 945 @property 946 def InitialTemperature(self) -> DesignLoadSubcaseTemperature: 947 result = self._Entity.InitialTemperature 948 return DesignLoadSubcaseTemperature(result) if result is not None else None 949 950 @property 951 def Description(self) -> str: 952 return self._Entity.Description 953 954 @property 955 def IsActive(self) -> bool: 956 return self._Entity.IsActive 957 958 @property 959 def IsEditable(self) -> bool: 960 return self._Entity.IsEditable 961 962 @property 963 def IsVirtual(self) -> bool: 964 return self._Entity.IsVirtual 965 966 @property 967 def ModificationDate(self) -> DateTime: 968 return self._Entity.ModificationDate 969 970 @property 971 def SubcaseMultipliers(self) -> DesignLoadSubcaseMultiplierCol: 972 result = self._Entity.SubcaseMultipliers 973 return DesignLoadSubcaseMultiplierCol(result) if result is not None else None 974 975 @property 976 def Types(self) -> list[types.LoadCaseType]: 977 return [types.LoadCaseType[loadCaseType.ToString()] for loadCaseType in self._Entity.Types] 978 979 @property 980 def UID(self) -> Guid: 981 return self._Entity.UID
Represents an entity with an ID and Name.
Inherited Members
984class JointDesignResult(IdEntity): 985 def __init__(self, jointDesignResult: _api.JointDesignResult): 986 self._Entity = jointDesignResult
Represents an entity with an ID.
989class ZoneDesignResult(IdEntity): 990 def __init__(self, zoneDesignResult: _api.ZoneDesignResult): 991 self._Entity = zoneDesignResult 992 993 @property 994 def VariableParameter(self) -> types.VariableParameter: 995 return types.VariableParameter[self._Entity.VariableParameter.ToString()] 996 997 @property 998 def Value(self) -> float: 999 return self._Entity.Value 1000 1001 @property 1002 def MaterialId(self) -> int: 1003 return self._Entity.MaterialId 1004 1005 @property 1006 def MaterialType(self) -> types.MaterialType: 1007 return types.MaterialType[self._Entity.MaterialType.ToString()]
Represents an entity with an ID.
1010class Vector3d: 1011 ''' 1012 Represents a readonly 3D vector. 1013 ''' 1014 def __init__(self, vector3d: _api.Vector3d): 1015 self._Entity = vector3d 1016 1017 def Create_Vector3d(x: float, y: float, z: float): 1018 return Vector3d(_api.Vector3d(x, y, z)) 1019 1020 @property 1021 def X(self) -> float: 1022 return self._Entity.X 1023 1024 @property 1025 def Y(self) -> float: 1026 return self._Entity.Y 1027 1028 @property 1029 def Z(self) -> float: 1030 return self._Entity.Z 1031 1032 @overload 1033 def Equals(self, other) -> bool: ... 1034 1035 @overload 1036 def Equals(self, obj) -> bool: ... 1037 1038 def GetHashCode(self) -> int: 1039 return self._Entity.GetHashCode() 1040 1041 def Equals(self, item1 = None) -> bool: 1042 if isinstance(item1, Vector3d): 1043 return self._Entity.Equals(item1._Entity) 1044 1045 return self._Entity.Equals(item1._Entity) 1046 1047 def __eq__(self, other): 1048 return self.Equals(other) 1049 1050 def __ne__(self, other): 1051 return not self.Equals(other)
Represents a readonly 3D vector.
1054class DiscreteField(IdNameEntityRenameable): 1055 ''' 1056 Represents a table of discrete field data. 1057 ''' 1058 def __init__(self, discreteField: _api.DiscreteField): 1059 self._Entity = discreteField 1060 1061 @property 1062 def Columns(self) -> dict[int, str]: 1063 columnsDict = {} 1064 for kvp in self._Entity.Columns: 1065 columnsDict[int(kvp.Key)] = str(kvp.Value) 1066 1067 return columnsDict 1068 1069 @property 1070 def ColumnCount(self) -> int: 1071 return self._Entity.ColumnCount 1072 1073 @property 1074 def DataType(self) -> types.DiscreteFieldDataType: 1075 ''' 1076 Defines the type of data stored in a Discrete Field. Such as Vector, Scalar, String. 1077 ''' 1078 return types.DiscreteFieldDataType[self._Entity.DataType.ToString()] 1079 1080 @property 1081 def PhysicalEntityType(self) -> types.DiscreteFieldPhysicalEntityType: 1082 ''' 1083 Defines the type of physical entity that a Discrete Field applies to, such as zone, element, joint, etc. 1084 ''' 1085 return types.DiscreteFieldPhysicalEntityType[self._Entity.PhysicalEntityType.ToString()] 1086 1087 @property 1088 def PointIds(self) -> list[Vector3d]: 1089 return [Vector3d(vector3d) for vector3d in self._Entity.PointIds] 1090 1091 @property 1092 def RowCount(self) -> int: 1093 return self._Entity.RowCount 1094 1095 @property 1096 def RowIds(self) -> list[int]: 1097 return [int32 for int32 in self._Entity.RowIds] 1098 1099 def AddColumn(self, name: str) -> int: 1100 return self._Entity.AddColumn(name) 1101 1102 def AddPointRow(self, pointId: Vector3d) -> None: 1103 return self._Entity.AddPointRow(pointId._Entity) 1104 1105 @overload 1106 def ReadNumericCell(self, entityId: int, columnId: int) -> float: ... 1107 1108 @overload 1109 def ReadNumericCell(self, pointId: Vector3d, columnId: int) -> float: ... 1110 1111 @overload 1112 def ReadStringCell(self, entityId: int, columnId: int) -> str: ... 1113 1114 @overload 1115 def ReadStringCell(self, pointId: Vector3d, columnId: int) -> str: ... 1116 1117 def SetColumnName(self, columnId: int, name: str) -> None: 1118 return self._Entity.SetColumnName(columnId, name) 1119 1120 @overload 1121 def SetNumericValue(self, entityId: int, columnId: int, value: float) -> None: ... 1122 1123 @overload 1124 def SetNumericValue(self, pointId: Vector3d, columnId: int, value: float) -> None: ... 1125 1126 @overload 1127 def SetStringValue(self, entityId: int, columnId: int, value: str) -> None: ... 1128 1129 @overload 1130 def SetStringValue(self, pointId: Vector3d, columnId: int, value: str) -> None: ... 1131 1132 def DeleteAllRows(self) -> None: 1133 ''' 1134 Delete all rows for this discrete field. 1135 ''' 1136 return self._Entity.DeleteAllRows() 1137 1138 def DeleteColumn(self, columnId: int) -> None: 1139 return self._Entity.DeleteColumn(columnId) 1140 1141 def DeletePointRow(self, pointId: Vector3d) -> None: 1142 return self._Entity.DeletePointRow(pointId._Entity) 1143 1144 def DeleteRow(self, entityId: int) -> None: 1145 return self._Entity.DeleteRow(entityId) 1146 1147 def DeleteRowsAndColumns(self) -> None: 1148 ''' 1149 Delete all rows and columns for this discrete field. 1150 ''' 1151 return self._Entity.DeleteRowsAndColumns() 1152 1153 def ReadNumericCell(self, item1 = None, item2 = None) -> float: 1154 if isinstance(item1, int) and isinstance(item2, int): 1155 return self._Entity.ReadNumericCell(item1, item2) 1156 1157 if isinstance(item1, Vector3d) and isinstance(item2, int): 1158 return self._Entity.ReadNumericCell(item1._Entity, item2) 1159 1160 return self._Entity.ReadNumericCell(item1, item2) 1161 1162 def ReadStringCell(self, item1 = None, item2 = None) -> str: 1163 if isinstance(item1, int) and isinstance(item2, int): 1164 return self._Entity.ReadStringCell(item1, item2) 1165 1166 if isinstance(item1, Vector3d) and isinstance(item2, int): 1167 return self._Entity.ReadStringCell(item1._Entity, item2) 1168 1169 return self._Entity.ReadStringCell(item1, item2) 1170 1171 def SetNumericValue(self, item1 = None, item2 = None, item3 = None) -> None: 1172 if isinstance(item1, int) and isinstance(item2, int) and isinstance(item3, float): 1173 return self._Entity.SetNumericValue(item1, item2, item3) 1174 1175 if isinstance(item1, Vector3d) and isinstance(item2, int) and isinstance(item3, float): 1176 return self._Entity.SetNumericValue(item1._Entity, item2, item3) 1177 1178 return self._Entity.SetNumericValue(item1, item2, item3) 1179 1180 def SetStringValue(self, item1 = None, item2 = None, item3 = None) -> None: 1181 if isinstance(item1, int) and isinstance(item2, int) and isinstance(item3, str): 1182 return self._Entity.SetStringValue(item1, item2, item3) 1183 1184 if isinstance(item1, Vector3d) and isinstance(item2, int) and isinstance(item3, str): 1185 return self._Entity.SetStringValue(item1._Entity, item2, item3) 1186 1187 return self._Entity.SetStringValue(item1, item2, item3)
Represents a table of discrete field data.
1073 @property 1074 def DataType(self) -> types.DiscreteFieldDataType: 1075 ''' 1076 Defines the type of data stored in a Discrete Field. Such as Vector, Scalar, String. 1077 ''' 1078 return types.DiscreteFieldDataType[self._Entity.DataType.ToString()]
Defines the type of data stored in a Discrete Field. Such as Vector, Scalar, String.
1080 @property 1081 def PhysicalEntityType(self) -> types.DiscreteFieldPhysicalEntityType: 1082 ''' 1083 Defines the type of physical entity that a Discrete Field applies to, such as zone, element, joint, etc. 1084 ''' 1085 return types.DiscreteFieldPhysicalEntityType[self._Entity.PhysicalEntityType.ToString()]
Defines the type of physical entity that a Discrete Field applies to, such as zone, element, joint, etc.
1153 def ReadNumericCell(self, item1 = None, item2 = None) -> float: 1154 if isinstance(item1, int) and isinstance(item2, int): 1155 return self._Entity.ReadNumericCell(item1, item2) 1156 1157 if isinstance(item1, Vector3d) and isinstance(item2, int): 1158 return self._Entity.ReadNumericCell(item1._Entity, item2) 1159 1160 return self._Entity.ReadNumericCell(item1, item2)
1162 def ReadStringCell(self, item1 = None, item2 = None) -> str: 1163 if isinstance(item1, int) and isinstance(item2, int): 1164 return self._Entity.ReadStringCell(item1, item2) 1165 1166 if isinstance(item1, Vector3d) and isinstance(item2, int): 1167 return self._Entity.ReadStringCell(item1._Entity, item2) 1168 1169 return self._Entity.ReadStringCell(item1, item2)
1171 def SetNumericValue(self, item1 = None, item2 = None, item3 = None) -> None: 1172 if isinstance(item1, int) and isinstance(item2, int) and isinstance(item3, float): 1173 return self._Entity.SetNumericValue(item1, item2, item3) 1174 1175 if isinstance(item1, Vector3d) and isinstance(item2, int) and isinstance(item3, float): 1176 return self._Entity.SetNumericValue(item1._Entity, item2, item3) 1177 1178 return self._Entity.SetNumericValue(item1, item2, item3)
1180 def SetStringValue(self, item1 = None, item2 = None, item3 = None) -> None: 1181 if isinstance(item1, int) and isinstance(item2, int) and isinstance(item3, str): 1182 return self._Entity.SetStringValue(item1, item2, item3) 1183 1184 if isinstance(item1, Vector3d) and isinstance(item2, int) and isinstance(item3, str): 1185 return self._Entity.SetStringValue(item1._Entity, item2, item3) 1186 1187 return self._Entity.SetStringValue(item1, item2, item3)
1132 def DeleteAllRows(self) -> None: 1133 ''' 1134 Delete all rows for this discrete field. 1135 ''' 1136 return self._Entity.DeleteAllRows()
Delete all rows for this discrete field.
1147 def DeleteRowsAndColumns(self) -> None: 1148 ''' 1149 Delete all rows and columns for this discrete field. 1150 ''' 1151 return self._Entity.DeleteRowsAndColumns()
Delete all rows and columns for this discrete field.
Inherited Members
1190class Node(IdEntity): 1191 def __init__(self, node: _api.Node): 1192 self._Entity = node 1193 1194 @property 1195 def X(self) -> float: 1196 return self._Entity.X 1197 1198 @property 1199 def Y(self) -> float: 1200 return self._Entity.Y 1201 1202 @property 1203 def Z(self) -> float: 1204 return self._Entity.Z
Represents an entity with an ID.
1207class Centroid: 1208 def __init__(self, centroid: _api.Centroid): 1209 self._Entity = centroid 1210 1211 @property 1212 def X(self) -> float: 1213 return self._Entity.X 1214 1215 @property 1216 def Y(self) -> float: 1217 return self._Entity.Y 1218 1219 @property 1220 def Z(self) -> float: 1221 return self._Entity.Z
1224class Element(IdEntity): 1225 def __init__(self, element: _api.Element): 1226 self._Entity = element 1227 1228 @property 1229 def MarginOfSafety(self) -> float: 1230 return self._Entity.MarginOfSafety 1231 1232 @property 1233 def Centroid(self) -> Centroid: 1234 result = self._Entity.Centroid 1235 return Centroid(result) if result is not None else None 1236 1237 @property 1238 def Nodes(self) -> list[Node]: 1239 return [Node(node) for node in self._Entity.Nodes]
Represents an entity with an ID.
1242class FailureModeCategory(IdNameEntity): 1243 def __init__(self, failureModeCategory: _api.FailureModeCategory): 1244 self._Entity = failureModeCategory 1245 1246 @property 1247 def PackageId(self) -> int: 1248 return self._Entity.PackageId
Represents an entity with an ID and Name.
Inherited Members
1251class EntityWithAssignableProperties(IdNameEntityRenameable): 1252 def __init__(self, entityWithAssignableProperties: _api.EntityWithAssignableProperties): 1253 self._Entity = entityWithAssignableProperties 1254 1255 @property 1256 def AssignedAnalysisProperty(self) -> AnalysisProperty: 1257 result = self._Entity.AssignedAnalysisProperty 1258 return AnalysisProperty(result) if result is not None else None 1259 1260 @property 1261 def AssignedDesignProperty(self) -> DesignProperty: 1262 thisClass = type(self._Entity.AssignedDesignProperty).__name__ 1263 givenClass = DesignProperty 1264 for subclass in DesignProperty.__subclasses__(): 1265 if subclass.__name__ == thisClass: 1266 givenClass = subclass 1267 result = self._Entity.AssignedDesignProperty 1268 return givenClass(result) if result is not None else None 1269 1270 @property 1271 def AssignedLoadProperty(self) -> LoadProperty: 1272 thisClass = type(self._Entity.AssignedLoadProperty).__name__ 1273 givenClass = LoadProperty 1274 for subclass in LoadProperty.__subclasses__(): 1275 if subclass.__name__ == thisClass: 1276 givenClass = subclass 1277 result = self._Entity.AssignedLoadProperty 1278 return givenClass(result) if result is not None else None 1279 1280 def AssignAnalysisProperty(self, id: int) -> PropertyAssignmentStatus: 1281 return PropertyAssignmentStatus[self._Entity.AssignAnalysisProperty(id).ToString()] 1282 1283 def AssignDesignProperty(self, id: int) -> PropertyAssignmentStatus: 1284 return PropertyAssignmentStatus[self._Entity.AssignDesignProperty(id).ToString()] 1285 1286 def AssignLoadProperty(self, id: int) -> PropertyAssignmentStatus: 1287 return PropertyAssignmentStatus[self._Entity.AssignLoadProperty(id).ToString()] 1288 1289 def AssignProperty(self, property: AssignableProperty) -> PropertyAssignmentStatus: 1290 return PropertyAssignmentStatus[self._Entity.AssignProperty(property._Entity).ToString()]
Represents an entity with an ID and Name.
1260 @property 1261 def AssignedDesignProperty(self) -> DesignProperty: 1262 thisClass = type(self._Entity.AssignedDesignProperty).__name__ 1263 givenClass = DesignProperty 1264 for subclass in DesignProperty.__subclasses__(): 1265 if subclass.__name__ == thisClass: 1266 givenClass = subclass 1267 result = self._Entity.AssignedDesignProperty 1268 return givenClass(result) if result is not None else None
1270 @property 1271 def AssignedLoadProperty(self) -> LoadProperty: 1272 thisClass = type(self._Entity.AssignedLoadProperty).__name__ 1273 givenClass = LoadProperty 1274 for subclass in LoadProperty.__subclasses__(): 1275 if subclass.__name__ == thisClass: 1276 givenClass = subclass 1277 result = self._Entity.AssignedLoadProperty 1278 return givenClass(result) if result is not None else None
Inherited Members
1293class AnalysisResultCol(Generic[T]): 1294 def __init__(self, analysisResultCol: _api.AnalysisResultCol): 1295 self._Entity = analysisResultCol 1296 1297 @property 1298 def AnalysisResultColList(self) -> tuple[AnalysisResult]: 1299 if self._Entity.Count() <= 0: 1300 return () 1301 thisClass = type(self._Entity._items[0]).__name__ 1302 givenClass = AnalysisResult 1303 for subclass in AnalysisResult.__subclasses__(): 1304 if subclass.__name__ == thisClass: 1305 givenClass = subclass 1306 return tuple([givenClass(analysisResultCol) for analysisResultCol in self._Entity]) 1307 1308 def Count(self) -> int: 1309 return self._Entity.Count() 1310 1311 def __getitem__(self, index: int): 1312 return self.AnalysisResultColList[index] 1313 1314 def __iter__(self): 1315 yield from self.AnalysisResultColList 1316 1317 def __len__(self): 1318 return len(self.AnalysisResultColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1297 @property 1298 def AnalysisResultColList(self) -> tuple[AnalysisResult]: 1299 if self._Entity.Count() <= 0: 1300 return () 1301 thisClass = type(self._Entity._items[0]).__name__ 1302 givenClass = AnalysisResult 1303 for subclass in AnalysisResult.__subclasses__(): 1304 if subclass.__name__ == thisClass: 1305 givenClass = subclass 1306 return tuple([givenClass(analysisResultCol) for analysisResultCol in self._Entity])
1321class ZoneJointEntity(EntityWithAssignableProperties): 1322 ''' 1323 Abstract base for a Zone or Joint. 1324 ''' 1325 def __init__(self, zoneJointEntity: _api.ZoneJointEntity): 1326 self._Entity = zoneJointEntity 1327 1328 @abstractmethod 1329 def GetMinimumMargin(self) -> Margin: 1330 return Margin(self._Entity.GetMinimumMargin()) 1331 1332 @abstractmethod 1333 def GetControllingResult(self) -> AnalysisResult: 1334 result = self._Entity.GetControllingResult() 1335 thisClass = type(result).__name__ 1336 givenClass = AnalysisResult 1337 for subclass in AnalysisResult.__subclasses__(): 1338 if subclass.__name__ == thisClass: 1339 givenClass = subclass 1340 return givenClass(result) 1341 1342 @abstractmethod 1343 def GetAllResults(self) -> AnalysisResultCol: 1344 return AnalysisResultCol(self._Entity.GetAllResults())
Abstract base for a Zone or Joint.
1332 @abstractmethod 1333 def GetControllingResult(self) -> AnalysisResult: 1334 result = self._Entity.GetControllingResult() 1335 thisClass = type(result).__name__ 1336 givenClass = AnalysisResult 1337 for subclass in AnalysisResult.__subclasses__(): 1338 if subclass.__name__ == thisClass: 1339 givenClass = subclass 1340 return givenClass(result)
1347class JointDesignResultCol(IdEntityCol[JointDesignResult]): 1348 def __init__(self, jointDesignResultCol: _api.JointDesignResultCol): 1349 self._Entity = jointDesignResultCol 1350 self._CollectedClass = JointDesignResult 1351 1352 @property 1353 def JointDesignResultColList(self) -> tuple[JointDesignResult]: 1354 return tuple([JointDesignResult(jointDesignResultCol) for jointDesignResultCol in self._Entity]) 1355 1356 @overload 1357 def Get(self, jointSelectionId: types.JointSelectionId) -> JointDesignResult: ... 1358 1359 @overload 1360 def Get(self, jointRangeId: types.JointRangeId) -> JointDesignResult: ... 1361 1362 @overload 1363 def Get(self, id: int) -> JointDesignResult: ... 1364 1365 def Get(self, item1 = None) -> JointDesignResult: 1366 if isinstance(item1, types.JointSelectionId): 1367 result = self._Entity.Get(_types.JointSelectionId(item1.value)) 1368 thisClass = type(result).__name__ 1369 givenClass = JointDesignResult 1370 for subclass in JointDesignResult.__subclasses__(): 1371 if subclass.__name__ == thisClass: 1372 givenClass = subclass 1373 return givenClass(result) 1374 1375 if isinstance(item1, types.JointRangeId): 1376 result = self._Entity.Get(_types.JointRangeId(item1.value)) 1377 thisClass = type(result).__name__ 1378 givenClass = JointDesignResult 1379 for subclass in JointDesignResult.__subclasses__(): 1380 if subclass.__name__ == thisClass: 1381 givenClass = subclass 1382 return givenClass(result) 1383 1384 if isinstance(item1, int): 1385 return JointDesignResult(super().Get(item1)) 1386 1387 return self._Entity.Get(_types.JointSelectionId(item1.value)) 1388 1389 def __getitem__(self, index: int): 1390 return self.JointDesignResultColList[index] 1391 1392 def __iter__(self): 1393 yield from self.JointDesignResultColList 1394 1395 def __len__(self): 1396 return len(self.JointDesignResultColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1365 def Get(self, item1 = None) -> JointDesignResult: 1366 if isinstance(item1, types.JointSelectionId): 1367 result = self._Entity.Get(_types.JointSelectionId(item1.value)) 1368 thisClass = type(result).__name__ 1369 givenClass = JointDesignResult 1370 for subclass in JointDesignResult.__subclasses__(): 1371 if subclass.__name__ == thisClass: 1372 givenClass = subclass 1373 return givenClass(result) 1374 1375 if isinstance(item1, types.JointRangeId): 1376 result = self._Entity.Get(_types.JointRangeId(item1.value)) 1377 thisClass = type(result).__name__ 1378 givenClass = JointDesignResult 1379 for subclass in JointDesignResult.__subclasses__(): 1380 if subclass.__name__ == thisClass: 1381 givenClass = subclass 1382 return givenClass(result) 1383 1384 if isinstance(item1, int): 1385 return JointDesignResult(super().Get(item1)) 1386 1387 return self._Entity.Get(_types.JointSelectionId(item1.value))
Inherited Members
1399class Joint(ZoneJointEntity): 1400 def __init__(self, joint: _api.Joint): 1401 self._Entity = joint 1402 1403 @property 1404 def JointRangeSizingResults(self) -> JointDesignResultCol: 1405 result = self._Entity.JointRangeSizingResults 1406 return JointDesignResultCol(result) if result is not None else None 1407 1408 @property 1409 def JointSelectionSizingResults(self) -> JointDesignResultCol: 1410 result = self._Entity.JointSelectionSizingResults 1411 return JointDesignResultCol(result) if result is not None else None 1412 1413 def GetAllResults(self) -> AnalysisResultCol: 1414 return AnalysisResultCol(self._Entity.GetAllResults()) 1415 1416 def GetControllingResult(self) -> AnalysisResult: 1417 result = self._Entity.GetControllingResult() 1418 thisClass = type(result).__name__ 1419 givenClass = AnalysisResult 1420 for subclass in AnalysisResult.__subclasses__(): 1421 if subclass.__name__ == thisClass: 1422 givenClass = subclass 1423 return givenClass(result) 1424 1425 def GetMinimumMargin(self) -> Margin: 1426 return Margin(self._Entity.GetMinimumMargin())
Abstract base for a Zone or Joint.
1416 def GetControllingResult(self) -> AnalysisResult: 1417 result = self._Entity.GetControllingResult() 1418 thisClass = type(result).__name__ 1419 givenClass = AnalysisResult 1420 for subclass in AnalysisResult.__subclasses__(): 1421 if subclass.__name__ == thisClass: 1422 givenClass = subclass 1423 return givenClass(result)
1429class ZoneDesignResultCol(IdEntityCol[ZoneDesignResult]): 1430 def __init__(self, zoneDesignResultCol: _api.ZoneDesignResultCol): 1431 self._Entity = zoneDesignResultCol 1432 self._CollectedClass = ZoneDesignResult 1433 1434 @property 1435 def ZoneDesignResultColList(self) -> tuple[ZoneDesignResult]: 1436 return tuple([ZoneDesignResult(zoneDesignResultCol) for zoneDesignResultCol in self._Entity]) 1437 1438 @overload 1439 def Get(self, parameterId: types.VariableParameter) -> ZoneDesignResult: ... 1440 1441 @overload 1442 def Get(self, id: int) -> ZoneDesignResult: ... 1443 1444 def Get(self, item1 = None) -> ZoneDesignResult: 1445 if isinstance(item1, types.VariableParameter): 1446 return ZoneDesignResult(self._Entity.Get(_types.VariableParameter(item1.value))) 1447 1448 if isinstance(item1, int): 1449 return ZoneDesignResult(super().Get(item1)) 1450 1451 return self._Entity.Get(_types.VariableParameter(item1.value)) 1452 1453 def __getitem__(self, index: int): 1454 return self.ZoneDesignResultColList[index] 1455 1456 def __iter__(self): 1457 yield from self.ZoneDesignResultColList 1458 1459 def __len__(self): 1460 return len(self.ZoneDesignResultColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1444 def Get(self, item1 = None) -> ZoneDesignResult: 1445 if isinstance(item1, types.VariableParameter): 1446 return ZoneDesignResult(self._Entity.Get(_types.VariableParameter(item1.value))) 1447 1448 if isinstance(item1, int): 1449 return ZoneDesignResult(super().Get(item1)) 1450 1451 return self._Entity.Get(_types.VariableParameter(item1.value))
Inherited Members
1463class ZoneBase(ZoneJointEntity): 1464 ''' 1465 Abstract for regular Zones and Panel Segments. 1466 ''' 1467 def __init__(self, zoneBase: _api.ZoneBase): 1468 self._Entity = zoneBase 1469 1470 @property 1471 def Centroid(self) -> Centroid: 1472 result = self._Entity.Centroid 1473 return Centroid(result) if result is not None else None 1474 1475 @property 1476 def Id(self) -> int: 1477 return self._Entity.Id 1478 1479 @property 1480 def Weight(self) -> float: 1481 return self._Entity.Weight 1482 1483 @property 1484 def NonOptimumFactor(self) -> float: 1485 return self._Entity.NonOptimumFactor 1486 1487 @property 1488 def AddedWeight(self) -> float: 1489 return self._Entity.AddedWeight 1490 1491 @property 1492 def SuperimposePanel(self) -> bool: 1493 return self._Entity.SuperimposePanel 1494 1495 @property 1496 def BucklingImperfection(self) -> float: 1497 return self._Entity.BucklingImperfection 1498 1499 @property 1500 def IsBeamColumn(self) -> bool: 1501 return self._Entity.IsBeamColumn 1502 1503 @property 1504 def SuperimposeBoundaryCondition(self) -> int: 1505 return self._Entity.SuperimposeBoundaryCondition 1506 1507 @property 1508 def IsZeroOutFeaMoments(self) -> bool: 1509 return self._Entity.IsZeroOutFeaMoments 1510 1511 @property 1512 def IsZeroOutFeaTransverseShears(self) -> bool: 1513 return self._Entity.IsZeroOutFeaTransverseShears 1514 1515 @property 1516 def MechanicalLimit(self) -> float: 1517 return self._Entity.MechanicalLimit 1518 1519 @property 1520 def MechanicalUltimate(self) -> float: 1521 return self._Entity.MechanicalUltimate 1522 1523 @property 1524 def ThermalHelp(self) -> float: 1525 return self._Entity.ThermalHelp 1526 1527 @property 1528 def ThermalHurt(self) -> float: 1529 return self._Entity.ThermalHurt 1530 1531 @property 1532 def FatigueKTSkin(self) -> float: 1533 return self._Entity.FatigueKTSkin 1534 1535 @property 1536 def FatigueKTStiff(self) -> float: 1537 return self._Entity.FatigueKTStiff 1538 1539 @property 1540 def XSpan(self) -> float: 1541 return self._Entity.XSpan 1542 1543 @property 1544 def EARequired(self) -> float: 1545 return self._Entity.EARequired 1546 1547 @property 1548 def EI1Required(self) -> float: 1549 return self._Entity.EI1Required 1550 1551 @property 1552 def EI2Required(self) -> float: 1553 return self._Entity.EI2Required 1554 1555 @property 1556 def GJRequired(self) -> float: 1557 return self._Entity.GJRequired 1558 1559 @property 1560 def EAAuto(self) -> float: 1561 return self._Entity.EAAuto 1562 1563 @property 1564 def EI1Auto(self) -> float: 1565 return self._Entity.EI1Auto 1566 1567 @property 1568 def EI2Auto(self) -> float: 1569 return self._Entity.EI2Auto 1570 1571 @property 1572 def GJAuto(self) -> float: 1573 return self._Entity.GJAuto 1574 1575 @property 1576 def Ex(self) -> float: 1577 return self._Entity.Ex 1578 1579 @property 1580 def Dmid(self) -> float: 1581 return self._Entity.Dmid 1582 1583 @NonOptimumFactor.setter 1584 def NonOptimumFactor(self, value: float) -> None: 1585 self._Entity.NonOptimumFactor = value 1586 1587 @AddedWeight.setter 1588 def AddedWeight(self, value: float) -> None: 1589 self._Entity.AddedWeight = value 1590 1591 @SuperimposePanel.setter 1592 def SuperimposePanel(self, value: bool) -> None: 1593 self._Entity.SuperimposePanel = value 1594 1595 @BucklingImperfection.setter 1596 def BucklingImperfection(self, value: float) -> None: 1597 self._Entity.BucklingImperfection = value 1598 1599 @IsBeamColumn.setter 1600 def IsBeamColumn(self, value: bool) -> None: 1601 self._Entity.IsBeamColumn = value 1602 1603 @SuperimposeBoundaryCondition.setter 1604 def SuperimposeBoundaryCondition(self, value: int) -> None: 1605 self._Entity.SuperimposeBoundaryCondition = value 1606 1607 @IsZeroOutFeaMoments.setter 1608 def IsZeroOutFeaMoments(self, value: bool) -> None: 1609 self._Entity.IsZeroOutFeaMoments = value 1610 1611 @IsZeroOutFeaTransverseShears.setter 1612 def IsZeroOutFeaTransverseShears(self, value: bool) -> None: 1613 self._Entity.IsZeroOutFeaTransverseShears = value 1614 1615 @MechanicalLimit.setter 1616 def MechanicalLimit(self, value: float) -> None: 1617 self._Entity.MechanicalLimit = value 1618 1619 @MechanicalUltimate.setter 1620 def MechanicalUltimate(self, value: float) -> None: 1621 self._Entity.MechanicalUltimate = value 1622 1623 @ThermalHelp.setter 1624 def ThermalHelp(self, value: float) -> None: 1625 self._Entity.ThermalHelp = value 1626 1627 @ThermalHurt.setter 1628 def ThermalHurt(self, value: float) -> None: 1629 self._Entity.ThermalHurt = value 1630 1631 @FatigueKTSkin.setter 1632 def FatigueKTSkin(self, value: float) -> None: 1633 self._Entity.FatigueKTSkin = value 1634 1635 @FatigueKTStiff.setter 1636 def FatigueKTStiff(self, value: float) -> None: 1637 self._Entity.FatigueKTStiff = value 1638 1639 @XSpan.setter 1640 def XSpan(self, value: float) -> None: 1641 self._Entity.XSpan = value 1642 1643 @EARequired.setter 1644 def EARequired(self, value: float) -> None: 1645 self._Entity.EARequired = value 1646 1647 @EI1Required.setter 1648 def EI1Required(self, value: float) -> None: 1649 self._Entity.EI1Required = value 1650 1651 @EI2Required.setter 1652 def EI2Required(self, value: float) -> None: 1653 self._Entity.EI2Required = value 1654 1655 @GJRequired.setter 1656 def GJRequired(self, value: float) -> None: 1657 self._Entity.GJRequired = value 1658 1659 @Ex.setter 1660 def Ex(self, value: float) -> None: 1661 self._Entity.Ex = value 1662 1663 @Dmid.setter 1664 def Dmid(self, value: float) -> None: 1665 self._Entity.Dmid = value 1666 1667 def GetObjectName(self, objectId: types.FamilyObjectUID) -> str: 1668 return self._Entity.GetObjectName(_types.FamilyObjectUID(objectId.value)) 1669 1670 def GetConceptName(self) -> str: 1671 return self._Entity.GetConceptName() 1672 1673 def GetZoneDesignResults(self, solutionId: int = 1) -> ZoneDesignResultCol: 1674 return ZoneDesignResultCol(self._Entity.GetZoneDesignResults(solutionId)) 1675 1676 def RenumberZone(self, newId: int) -> ZoneIdUpdateStatus: 1677 return ZoneIdUpdateStatus[self._Entity.RenumberZone(newId).ToString()] 1678 1679 def GetAllResults(self) -> AnalysisResultCol: 1680 return AnalysisResultCol(self._Entity.GetAllResults()) 1681 1682 def GetControllingResult(self) -> AnalysisResult: 1683 result = self._Entity.GetControllingResult() 1684 thisClass = type(result).__name__ 1685 givenClass = AnalysisResult 1686 for subclass in AnalysisResult.__subclasses__(): 1687 if subclass.__name__ == thisClass: 1688 givenClass = subclass 1689 return givenClass(result) 1690 1691 def GetMinimumMargin(self) -> Margin: 1692 return Margin(self._Entity.GetMinimumMargin())
Abstract for regular Zones and Panel Segments.
1682 def GetControllingResult(self) -> AnalysisResult: 1683 result = self._Entity.GetControllingResult() 1684 thisClass = type(result).__name__ 1685 givenClass = AnalysisResult 1686 for subclass in AnalysisResult.__subclasses__(): 1687 if subclass.__name__ == thisClass: 1688 givenClass = subclass 1689 return givenClass(result)
1695class ElementCol(IdEntityCol[Element]): 1696 def __init__(self, elementCol: _api.ElementCol): 1697 self._Entity = elementCol 1698 self._CollectedClass = Element 1699 1700 @property 1701 def ElementColList(self) -> tuple[Element]: 1702 return tuple([Element(elementCol) for elementCol in self._Entity]) 1703 1704 def __getitem__(self, index: int): 1705 return self.ElementColList[index] 1706 1707 def __iter__(self): 1708 yield from self.ElementColList 1709 1710 def __len__(self): 1711 return len(self.ElementColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
1714class PanelSegment(ZoneBase): 1715 def __init__(self, panelSegment: _api.PanelSegment): 1716 self._Entity = panelSegment 1717 1718 @property 1719 def ElementsByObjectOrSkin(self) -> dict[types.DiscreteDefinitionType, ElementCol]: 1720 elementsByObjectOrSkinDict = {} 1721 for kvp in self._Entity.ElementsByObjectOrSkin: 1722 elementsByObjectOrSkinDict[types.DiscreteDefinitionType[kvp.Key.ToString()]] = ElementCol(kvp.Value) 1723 1724 return elementsByObjectOrSkinDict 1725 1726 @property 1727 def Skins(self) -> tuple[types.DiscreteDefinitionType]: 1728 return tuple([types.DiscreteDefinitionType(discreteDefinitionType) for discreteDefinitionType in self._Entity.Skins]) 1729 1730 @property 1731 def Objects(self) -> tuple[types.DiscreteDefinitionType]: 1732 return tuple([types.DiscreteDefinitionType(discreteDefinitionType) for discreteDefinitionType in self._Entity.Objects]) 1733 1734 @property 1735 def DiscreteTechnique(self) -> types.DiscreteTechnique: 1736 return types.DiscreteTechnique[self._Entity.DiscreteTechnique.ToString()] 1737 1738 @property 1739 def LeftSkinZoneId(self) -> int: 1740 return self._Entity.LeftSkinZoneId 1741 1742 @property 1743 def RightSkinZoneId(self) -> int: 1744 return self._Entity.RightSkinZoneId 1745 1746 def GetElements(self, discreteDefinitionType: types.DiscreteDefinitionType) -> ElementCol: 1747 return ElementCol(self._Entity.GetElements(_types.DiscreteDefinitionType(discreteDefinitionType.value))) 1748 1749 def SetObjectElements(self, discreteDefinitionType: types.DiscreteDefinitionType, elementIds: tuple[int]) -> None: 1750 elementIdsList = MakeCSharpIntList(elementIds) 1751 elementIdsEnumerable = IEnumerable(elementIdsList) 1752 return self._Entity.SetObjectElements(_types.DiscreteDefinitionType(discreteDefinitionType.value), elementIdsEnumerable)
Abstract for regular Zones and Panel Segments.
1718 @property 1719 def ElementsByObjectOrSkin(self) -> dict[types.DiscreteDefinitionType, ElementCol]: 1720 elementsByObjectOrSkinDict = {} 1721 for kvp in self._Entity.ElementsByObjectOrSkin: 1722 elementsByObjectOrSkinDict[types.DiscreteDefinitionType[kvp.Key.ToString()]] = ElementCol(kvp.Value) 1723 1724 return elementsByObjectOrSkinDict
1749 def SetObjectElements(self, discreteDefinitionType: types.DiscreteDefinitionType, elementIds: tuple[int]) -> None: 1750 elementIdsList = MakeCSharpIntList(elementIds) 1751 elementIdsEnumerable = IEnumerable(elementIdsList) 1752 return self._Entity.SetObjectElements(_types.DiscreteDefinitionType(discreteDefinitionType.value), elementIdsEnumerable)
Inherited Members
- ZoneBase
- Centroid
- Id
- Weight
- NonOptimumFactor
- AddedWeight
- SuperimposePanel
- BucklingImperfection
- IsBeamColumn
- SuperimposeBoundaryCondition
- IsZeroOutFeaMoments
- IsZeroOutFeaTransverseShears
- MechanicalLimit
- MechanicalUltimate
- ThermalHelp
- ThermalHurt
- FatigueKTSkin
- FatigueKTStiff
- XSpan
- EARequired
- EI1Required
- EI2Required
- GJRequired
- EAAuto
- EI1Auto
- EI2Auto
- GJAuto
- Ex
- Dmid
- GetObjectName
- GetConceptName
- GetZoneDesignResults
- RenumberZone
- GetAllResults
- GetControllingResult
- GetMinimumMargin
1755class Zone(ZoneBase): 1756 ''' 1757 Abstract for regular Zones (not Panel Segments). 1758 ''' 1759 def __init__(self, zone: _api.Zone): 1760 self._Entity = zone 1761 1762 @property 1763 def Elements(self) -> ElementCol: 1764 result = self._Entity.Elements 1765 return ElementCol(result) if result is not None else None 1766 1767 def AddElements(self, elementIds: tuple[int]) -> None: 1768 elementIdsList = MakeCSharpIntList(elementIds) 1769 elementIdsEnumerable = IEnumerable(elementIdsList) 1770 return self._Entity.AddElements(elementIdsEnumerable)
Abstract for regular Zones (not Panel Segments).
Inherited Members
- ZoneBase
- Centroid
- Id
- Weight
- NonOptimumFactor
- AddedWeight
- SuperimposePanel
- BucklingImperfection
- IsBeamColumn
- SuperimposeBoundaryCondition
- IsZeroOutFeaMoments
- IsZeroOutFeaTransverseShears
- MechanicalLimit
- MechanicalUltimate
- ThermalHelp
- ThermalHurt
- FatigueKTSkin
- FatigueKTStiff
- XSpan
- EARequired
- EI1Required
- EI2Required
- GJRequired
- EAAuto
- EI1Auto
- EI2Auto
- GJAuto
- Ex
- Dmid
- GetObjectName
- GetConceptName
- GetZoneDesignResults
- RenumberZone
- GetAllResults
- GetControllingResult
- GetMinimumMargin
1773class EntityWithAssignablePropertiesCol(IdNameEntityCol, Generic[T]): 1774 def __init__(self, entityWithAssignablePropertiesCol: _api.EntityWithAssignablePropertiesCol): 1775 self._Entity = entityWithAssignablePropertiesCol 1776 self._CollectedClass = T 1777 1778 @property 1779 def EntityWithAssignablePropertiesColList(self) -> tuple[T]: 1780 if self._Entity.Count() <= 0: 1781 return () 1782 thisClass = type(self._Entity._items[0]).__name__ 1783 givenClass = T 1784 for subclass in T.__subclasses__(): 1785 if subclass.__name__ == thisClass: 1786 givenClass = subclass 1787 return tuple([givenClass(entityWithAssignablePropertiesCol) for entityWithAssignablePropertiesCol in self._Entity]) 1788 1789 def AssignPropertyToAll(self, property: AssignableProperty) -> PropertyAssignmentStatus: 1790 return PropertyAssignmentStatus[self._Entity.AssignPropertyToAll(property._Entity).ToString()] 1791 1792 @overload 1793 def Get(self, name: str) -> T: ... 1794 1795 @overload 1796 def Get(self, id: int) -> T: ... 1797 1798 def Get(self, item1 = None) -> T: 1799 if isinstance(item1, str): 1800 return super().Get(item1) 1801 1802 if isinstance(item1, int): 1803 return super().Get(item1) 1804 1805 return self._Entity.Get(item1) 1806 1807 def __getitem__(self, index: int): 1808 return self.EntityWithAssignablePropertiesColList[index] 1809 1810 def __iter__(self): 1811 yield from self.EntityWithAssignablePropertiesColList 1812 1813 def __len__(self): 1814 return len(self.EntityWithAssignablePropertiesColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1778 @property 1779 def EntityWithAssignablePropertiesColList(self) -> tuple[T]: 1780 if self._Entity.Count() <= 0: 1781 return () 1782 thisClass = type(self._Entity._items[0]).__name__ 1783 givenClass = T 1784 for subclass in T.__subclasses__(): 1785 if subclass.__name__ == thisClass: 1786 givenClass = subclass 1787 return tuple([givenClass(entityWithAssignablePropertiesCol) for entityWithAssignablePropertiesCol in self._Entity])
Inherited Members
1817class JointCol(EntityWithAssignablePropertiesCol[Joint]): 1818 def __init__(self, jointCol: _api.JointCol): 1819 self._Entity = jointCol 1820 self._CollectedClass = Joint 1821 1822 @property 1823 def JointColList(self) -> tuple[Joint]: 1824 return tuple([Joint(jointCol) for jointCol in self._Entity]) 1825 1826 @overload 1827 def Get(self, name: str) -> Joint: ... 1828 1829 @overload 1830 def Get(self, id: int) -> Joint: ... 1831 1832 def Get(self, item1 = None) -> Joint: 1833 if isinstance(item1, str): 1834 return Joint(super().Get(item1)) 1835 1836 if isinstance(item1, int): 1837 return Joint(super().Get(item1)) 1838 1839 return self._Entity.Get(item1) 1840 1841 def __getitem__(self, index: int): 1842 return self.JointColList[index] 1843 1844 def __iter__(self): 1845 yield from self.JointColList 1846 1847 def __len__(self): 1848 return len(self.JointColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1851class PanelSegmentCol(EntityWithAssignablePropertiesCol[PanelSegment]): 1852 def __init__(self, panelSegmentCol: _api.PanelSegmentCol): 1853 self._Entity = panelSegmentCol 1854 self._CollectedClass = PanelSegment 1855 1856 @property 1857 def PanelSegmentColList(self) -> tuple[PanelSegment]: 1858 return tuple([PanelSegment(panelSegmentCol) for panelSegmentCol in self._Entity]) 1859 1860 @overload 1861 def Get(self, name: str) -> PanelSegment: ... 1862 1863 @overload 1864 def Get(self, id: int) -> PanelSegment: ... 1865 1866 def Get(self, item1 = None) -> PanelSegment: 1867 if isinstance(item1, str): 1868 return PanelSegment(super().Get(item1)) 1869 1870 if isinstance(item1, int): 1871 return PanelSegment(super().Get(item1)) 1872 1873 return self._Entity.Get(item1) 1874 1875 def __getitem__(self, index: int): 1876 return self.PanelSegmentColList[index] 1877 1878 def __iter__(self): 1879 yield from self.PanelSegmentColList 1880 1881 def __len__(self): 1882 return len(self.PanelSegmentColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1885class ZoneCol(EntityWithAssignablePropertiesCol[Zone]): 1886 def __init__(self, zoneCol: _api.ZoneCol): 1887 self._Entity = zoneCol 1888 self._CollectedClass = Zone 1889 1890 @property 1891 def ZoneColList(self) -> tuple[Zone]: 1892 return tuple([Zone(zoneCol) for zoneCol in self._Entity]) 1893 1894 @overload 1895 def Get(self, name: str) -> Zone: ... 1896 1897 @overload 1898 def Get(self, id: int) -> Zone: ... 1899 1900 def Get(self, item1 = None) -> Zone: 1901 if isinstance(item1, str): 1902 return Zone(super().Get(item1)) 1903 1904 if isinstance(item1, int): 1905 return Zone(super().Get(item1)) 1906 1907 return self._Entity.Get(item1) 1908 1909 def __getitem__(self, index: int): 1910 return self.ZoneColList[index] 1911 1912 def __iter__(self): 1913 yield from self.ZoneColList 1914 1915 def __len__(self): 1916 return len(self.ZoneColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1919class ZoneJointContainer(IdNameEntityRenameable): 1920 ''' 1921 Represents an entity that contains a collection of Zones and Joints. 1922 ''' 1923 def __init__(self, zoneJointContainer: _api.ZoneJointContainer): 1924 self._Entity = zoneJointContainer 1925 1926 @property 1927 def Centroid(self) -> Centroid: 1928 result = self._Entity.Centroid 1929 return Centroid(result) if result is not None else None 1930 1931 @property 1932 def Joints(self) -> JointCol: 1933 result = self._Entity.Joints 1934 return JointCol(result) if result is not None else None 1935 1936 @property 1937 def PanelSegments(self) -> PanelSegmentCol: 1938 result = self._Entity.PanelSegments 1939 return PanelSegmentCol(result) if result is not None else None 1940 1941 @property 1942 def TotalBeamLength(self) -> float: 1943 return self._Entity.TotalBeamLength 1944 1945 @property 1946 def TotalPanelArea(self) -> float: 1947 return self._Entity.TotalPanelArea 1948 1949 @property 1950 def TotalZoneWeight(self) -> float: 1951 return self._Entity.TotalZoneWeight 1952 1953 @property 1954 def Zones(self) -> ZoneCol: 1955 result = self._Entity.Zones 1956 return ZoneCol(result) if result is not None else None 1957 1958 @overload 1959 def AddJoint(self, id: int) -> CollectionModificationStatus: ... 1960 1961 @overload 1962 @abstractmethod 1963 def AddJoint(self, joint: Joint) -> CollectionModificationStatus: ... 1964 1965 @overload 1966 def RemoveJoint(self, id: int) -> CollectionModificationStatus: ... 1967 1968 @overload 1969 def RemoveJoint(self, joint: Joint) -> CollectionModificationStatus: ... 1970 1971 @overload 1972 @abstractmethod 1973 def RemoveJoints(self, jointIds: tuple[int]) -> CollectionModificationStatus: ... 1974 1975 @overload 1976 def RemoveJoints(self, joints: JointCol) -> CollectionModificationStatus: ... 1977 1978 @overload 1979 def AddZone(self, id: int) -> CollectionModificationStatus: ... 1980 1981 @overload 1982 def AddZones(self, ids: tuple[int]) -> CollectionModificationStatus: ... 1983 1984 @overload 1985 def AddZone(self, zone: Zone) -> CollectionModificationStatus: ... 1986 1987 @overload 1988 @abstractmethod 1989 def AddZones(self, zones: tuple[Zone]) -> CollectionModificationStatus: ... 1990 1991 @overload 1992 def RemoveZone(self, id: int) -> CollectionModificationStatus: ... 1993 1994 @overload 1995 def RemoveZone(self, zone: Zone) -> CollectionModificationStatus: ... 1996 1997 @overload 1998 @abstractmethod 1999 def RemoveZones(self, zoneIds: tuple[int]) -> CollectionModificationStatus: ... 2000 2001 @overload 2002 def RemoveZones(self, zones: ZoneCol) -> CollectionModificationStatus: ... 2003 2004 @overload 2005 def AddPanelSegment(self, id: int) -> CollectionModificationStatus: ... 2006 2007 @overload 2008 @abstractmethod 2009 def AddPanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 2010 2011 @overload 2012 def RemovePanelSegment(self, id: int) -> CollectionModificationStatus: ... 2013 2014 @overload 2015 def RemovePanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 2016 2017 @overload 2018 @abstractmethod 2019 def RemovePanelSegments(self, segmentIds: tuple[int]) -> CollectionModificationStatus: ... 2020 2021 @overload 2022 def RemovePanelSegments(self, segments: PanelSegmentCol) -> CollectionModificationStatus: ... 2023 2024 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 2025 if isinstance(item1, int): 2026 return CollectionModificationStatus[self._Entity.AddJoint(item1).ToString()] 2027 2028 if isinstance(item1, Joint): 2029 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 2030 2031 return self._Entity.AddJoint(item1) 2032 2033 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 2034 if isinstance(item1, int): 2035 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()] 2036 2037 if isinstance(item1, Joint): 2038 return CollectionModificationStatus[self._Entity.RemoveJoint(item1._Entity).ToString()] 2039 2040 return self._Entity.RemoveJoint(item1) 2041 2042 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 2043 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 2044 jointIdsList = MakeCSharpIntList(item1) 2045 jointIdsEnumerable = IEnumerable(jointIdsList) 2046 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 2047 2048 if isinstance(item1, JointCol): 2049 return CollectionModificationStatus[self._Entity.RemoveJoints(item1._Entity).ToString()] 2050 2051 return self._Entity.RemoveJoints(item1) 2052 2053 def AddZone(self, item1 = None) -> CollectionModificationStatus: 2054 if isinstance(item1, int): 2055 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()] 2056 2057 if isinstance(item1, Zone): 2058 return CollectionModificationStatus[self._Entity.AddZone(item1._Entity).ToString()] 2059 2060 return self._Entity.AddZone(item1) 2061 2062 def AddZones(self, item1 = None) -> CollectionModificationStatus: 2063 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 2064 idsList = MakeCSharpIntList(item1) 2065 idsEnumerable = IEnumerable(idsList) 2066 return CollectionModificationStatus[self._Entity.AddZones(idsEnumerable).ToString()] 2067 2068 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], Zone): 2069 zonesList = List[_api.Zone]() 2070 if item1 is not None: 2071 for thing in item1: 2072 if thing is not None: 2073 zonesList.Add(thing._Entity) 2074 zonesEnumerable = IEnumerable(zonesList) 2075 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 2076 2077 return self._Entity.AddZones(item1) 2078 2079 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 2080 if isinstance(item1, int): 2081 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()] 2082 2083 if isinstance(item1, Zone): 2084 return CollectionModificationStatus[self._Entity.RemoveZone(item1._Entity).ToString()] 2085 2086 return self._Entity.RemoveZone(item1) 2087 2088 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 2089 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 2090 zoneIdsList = MakeCSharpIntList(item1) 2091 zoneIdsEnumerable = IEnumerable(zoneIdsList) 2092 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 2093 2094 if isinstance(item1, ZoneCol): 2095 return CollectionModificationStatus[self._Entity.RemoveZones(item1._Entity).ToString()] 2096 2097 return self._Entity.RemoveZones(item1) 2098 2099 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 2100 if isinstance(item1, int): 2101 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1).ToString()] 2102 2103 if isinstance(item1, PanelSegment): 2104 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 2105 2106 return self._Entity.AddPanelSegment(item1) 2107 2108 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 2109 if isinstance(item1, int): 2110 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()] 2111 2112 if isinstance(item1, PanelSegment): 2113 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1._Entity).ToString()] 2114 2115 return self._Entity.RemovePanelSegment(item1) 2116 2117 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 2118 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 2119 segmentIdsList = MakeCSharpIntList(item1) 2120 segmentIdsEnumerable = IEnumerable(segmentIdsList) 2121 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 2122 2123 if isinstance(item1, PanelSegmentCol): 2124 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1._Entity).ToString()] 2125 2126 return self._Entity.RemovePanelSegments(item1)
Represents an entity that contains a collection of Zones and Joints.
2024 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 2025 if isinstance(item1, int): 2026 return CollectionModificationStatus[self._Entity.AddJoint(item1).ToString()] 2027 2028 if isinstance(item1, Joint): 2029 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 2030 2031 return self._Entity.AddJoint(item1)
2033 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 2034 if isinstance(item1, int): 2035 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()] 2036 2037 if isinstance(item1, Joint): 2038 return CollectionModificationStatus[self._Entity.RemoveJoint(item1._Entity).ToString()] 2039 2040 return self._Entity.RemoveJoint(item1)
2042 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 2043 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 2044 jointIdsList = MakeCSharpIntList(item1) 2045 jointIdsEnumerable = IEnumerable(jointIdsList) 2046 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 2047 2048 if isinstance(item1, JointCol): 2049 return CollectionModificationStatus[self._Entity.RemoveJoints(item1._Entity).ToString()] 2050 2051 return self._Entity.RemoveJoints(item1)
2053 def AddZone(self, item1 = None) -> CollectionModificationStatus: 2054 if isinstance(item1, int): 2055 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()] 2056 2057 if isinstance(item1, Zone): 2058 return CollectionModificationStatus[self._Entity.AddZone(item1._Entity).ToString()] 2059 2060 return self._Entity.AddZone(item1)
2062 def AddZones(self, item1 = None) -> CollectionModificationStatus: 2063 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 2064 idsList = MakeCSharpIntList(item1) 2065 idsEnumerable = IEnumerable(idsList) 2066 return CollectionModificationStatus[self._Entity.AddZones(idsEnumerable).ToString()] 2067 2068 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], Zone): 2069 zonesList = List[_api.Zone]() 2070 if item1 is not None: 2071 for thing in item1: 2072 if thing is not None: 2073 zonesList.Add(thing._Entity) 2074 zonesEnumerable = IEnumerable(zonesList) 2075 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 2076 2077 return self._Entity.AddZones(item1)
2079 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 2080 if isinstance(item1, int): 2081 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()] 2082 2083 if isinstance(item1, Zone): 2084 return CollectionModificationStatus[self._Entity.RemoveZone(item1._Entity).ToString()] 2085 2086 return self._Entity.RemoveZone(item1)
2088 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 2089 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 2090 zoneIdsList = MakeCSharpIntList(item1) 2091 zoneIdsEnumerable = IEnumerable(zoneIdsList) 2092 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 2093 2094 if isinstance(item1, ZoneCol): 2095 return CollectionModificationStatus[self._Entity.RemoveZones(item1._Entity).ToString()] 2096 2097 return self._Entity.RemoveZones(item1)
2099 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 2100 if isinstance(item1, int): 2101 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1).ToString()] 2102 2103 if isinstance(item1, PanelSegment): 2104 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 2105 2106 return self._Entity.AddPanelSegment(item1)
2108 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 2109 if isinstance(item1, int): 2110 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()] 2111 2112 if isinstance(item1, PanelSegment): 2113 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1._Entity).ToString()] 2114 2115 return self._Entity.RemovePanelSegment(item1)
2117 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 2118 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 2119 segmentIdsList = MakeCSharpIntList(item1) 2120 segmentIdsEnumerable = IEnumerable(segmentIdsList) 2121 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 2122 2123 if isinstance(item1, PanelSegmentCol): 2124 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1._Entity).ToString()] 2125 2126 return self._Entity.RemovePanelSegments(item1)
Inherited Members
2129class AutomatedConstraint(IdNameEntityRenameable): 2130 def __init__(self, automatedConstraint: _api.AutomatedConstraint): 2131 self._Entity = automatedConstraint 2132 2133 @property 2134 def ConstraintType(self) -> types.StiffnessCriteriaType: 2135 return types.StiffnessCriteriaType[self._Entity.ConstraintType.ToString()] 2136 2137 @property 2138 def Set(self) -> str: 2139 return self._Entity.Set 2140 2141 @property 2142 def DesignLoadCases(self) -> list[str]: 2143 return [string for string in self._Entity.DesignLoadCases] 2144 2145 @Set.setter 2146 def Set(self, value: str) -> None: 2147 self._Entity.Set = value 2148 2149 def AddDesignLoadCases(self, designLoadCases: list[str]) -> None: 2150 designLoadCasesList = List[str]() 2151 if designLoadCases is not None: 2152 for thing in designLoadCases: 2153 if thing is not None: 2154 designLoadCasesList.Add(thing) 2155 return self._Entity.AddDesignLoadCases(designLoadCasesList) 2156 2157 def RemoveDesignLoadCases(self, designLoadCases: list[str]) -> None: 2158 designLoadCasesList = List[str]() 2159 if designLoadCases is not None: 2160 for thing in designLoadCases: 2161 if thing is not None: 2162 designLoadCasesList.Add(thing) 2163 return self._Entity.RemoveDesignLoadCases(designLoadCasesList)
Represents an entity with an ID and Name.
2149 def AddDesignLoadCases(self, designLoadCases: list[str]) -> None: 2150 designLoadCasesList = List[str]() 2151 if designLoadCases is not None: 2152 for thing in designLoadCases: 2153 if thing is not None: 2154 designLoadCasesList.Add(thing) 2155 return self._Entity.AddDesignLoadCases(designLoadCasesList)
2157 def RemoveDesignLoadCases(self, designLoadCases: list[str]) -> None: 2158 designLoadCasesList = List[str]() 2159 if designLoadCases is not None: 2160 for thing in designLoadCases: 2161 if thing is not None: 2162 designLoadCasesList.Add(thing) 2163 return self._Entity.RemoveDesignLoadCases(designLoadCasesList)
Inherited Members
2166class ModalAutomatedConstraint(AutomatedConstraint): 2167 def __init__(self, modalAutomatedConstraint: _api.ModalAutomatedConstraint): 2168 self._Entity = modalAutomatedConstraint 2169 2170 @property 2171 def Eigenvalue(self) -> float: 2172 return self._Entity.Eigenvalue 2173 2174 @Eigenvalue.setter 2175 def Eigenvalue(self, value: float) -> None: 2176 self._Entity.Eigenvalue = value
Represents an entity with an ID and Name.
2179class BucklingAutomatedConstraint(ModalAutomatedConstraint): 2180 def __init__(self, bucklingAutomatedConstraint: _api.BucklingAutomatedConstraint): 2181 self._Entity = bucklingAutomatedConstraint
Represents an entity with an ID and Name.
2184class StaticAutomatedConstraint(AutomatedConstraint): 2185 def __init__(self, staticAutomatedConstraint: _api.StaticAutomatedConstraint): 2186 self._Entity = staticAutomatedConstraint 2187 2188 @property 2189 def VirtualDesignLoad(self) -> str: 2190 return self._Entity.VirtualDesignLoad 2191 2192 @property 2193 def GridId(self) -> int: 2194 return self._Entity.GridId 2195 2196 @property 2197 def Orientation(self) -> types.DisplacementShapeType: 2198 return types.DisplacementShapeType[self._Entity.Orientation.ToString()] 2199 2200 @property 2201 def HasVector(self) -> bool: 2202 return self._Entity.HasVector 2203 2204 @property 2205 def X(self) -> float: 2206 return self._Entity.X 2207 2208 @property 2209 def Y(self) -> float: 2210 return self._Entity.Y 2211 2212 @property 2213 def Z(self) -> float: 2214 return self._Entity.Z 2215 2216 @VirtualDesignLoad.setter 2217 def VirtualDesignLoad(self, value: str) -> None: 2218 self._Entity.VirtualDesignLoad = value 2219 2220 @GridId.setter 2221 def GridId(self, value: int) -> None: 2222 self._Entity.GridId = value 2223 2224 @Orientation.setter 2225 def Orientation(self, value: types.DisplacementShapeType) -> None: 2226 self._Entity.Orientation = _types.DisplacementShapeType(value.value) 2227 2228 @X.setter 2229 def X(self, value: float) -> None: 2230 self._Entity.X = value 2231 2232 @Y.setter 2233 def Y(self, value: float) -> None: 2234 self._Entity.Y = value 2235 2236 @Z.setter 2237 def Z(self, value: float) -> None: 2238 self._Entity.Z = value
Represents an entity with an ID and Name.
2241class DisplacementAutomatedConstraint(StaticAutomatedConstraint): 2242 def __init__(self, displacementAutomatedConstraint: _api.DisplacementAutomatedConstraint): 2243 self._Entity = displacementAutomatedConstraint 2244 2245 @property 2246 def Limit(self) -> float: 2247 return self._Entity.Limit 2248 2249 @Limit.setter 2250 def Limit(self, value: float) -> None: 2251 self._Entity.Limit = value
Represents an entity with an ID and Name.
2254class FrequencyAutomatedConstraint(ModalAutomatedConstraint): 2255 def __init__(self, frequencyAutomatedConstraint: _api.FrequencyAutomatedConstraint): 2256 self._Entity = frequencyAutomatedConstraint
Represents an entity with an ID and Name.
2259class RotationAutomatedConstraint(StaticAutomatedConstraint): 2260 def __init__(self, rotationAutomatedConstraint: _api.RotationAutomatedConstraint): 2261 self._Entity = rotationAutomatedConstraint 2262 2263 @property 2264 def Limit(self) -> float: 2265 return self._Entity.Limit 2266 2267 @Limit.setter 2268 def Limit(self, value: float) -> None: 2269 self._Entity.Limit = value
Represents an entity with an ID and Name.
2272class ManualConstraint(IdNameEntityRenameable): 2273 def __init__(self, manualConstraint: _api.ManualConstraint): 2274 self._Entity = manualConstraint 2275 2276 @property 2277 def ConstraintType(self) -> types.ConstraintType: 2278 return types.ConstraintType[self._Entity.ConstraintType.ToString()] 2279 2280 @property 2281 def Set(self) -> str: 2282 return self._Entity.Set 2283 2284 @property 2285 def Limit(self) -> float: 2286 return self._Entity.Limit 2287 2288 @property 2289 def A11(self) -> bool: 2290 return self._Entity.A11 2291 2292 @property 2293 def A22(self) -> bool: 2294 return self._Entity.A22 2295 2296 @property 2297 def A33(self) -> bool: 2298 return self._Entity.A33 2299 2300 @property 2301 def D11(self) -> bool: 2302 return self._Entity.D11 2303 2304 @property 2305 def D22(self) -> bool: 2306 return self._Entity.D22 2307 2308 @property 2309 def D33(self) -> bool: 2310 return self._Entity.D33 2311 2312 @property 2313 def EA(self) -> bool: 2314 return self._Entity.EA 2315 2316 @property 2317 def EI1(self) -> bool: 2318 return self._Entity.EI1 2319 2320 @property 2321 def EI2(self) -> bool: 2322 return self._Entity.EI2 2323 2324 @property 2325 def GJ(self) -> bool: 2326 return self._Entity.GJ 2327 2328 @property 2329 def IsActive(self) -> bool: 2330 return self._Entity.IsActive 2331 2332 @Set.setter 2333 def Set(self, value: str) -> None: 2334 self._Entity.Set = value 2335 2336 @Limit.setter 2337 def Limit(self, value: float) -> None: 2338 self._Entity.Limit = value 2339 2340 @A11.setter 2341 def A11(self, value: bool) -> None: 2342 self._Entity.A11 = value 2343 2344 @A22.setter 2345 def A22(self, value: bool) -> None: 2346 self._Entity.A22 = value 2347 2348 @A33.setter 2349 def A33(self, value: bool) -> None: 2350 self._Entity.A33 = value 2351 2352 @D11.setter 2353 def D11(self, value: bool) -> None: 2354 self._Entity.D11 = value 2355 2356 @D22.setter 2357 def D22(self, value: bool) -> None: 2358 self._Entity.D22 = value 2359 2360 @D33.setter 2361 def D33(self, value: bool) -> None: 2362 self._Entity.D33 = value 2363 2364 @EA.setter 2365 def EA(self, value: bool) -> None: 2366 self._Entity.EA = value 2367 2368 @EI1.setter 2369 def EI1(self, value: bool) -> None: 2370 self._Entity.EI1 = value 2371 2372 @EI2.setter 2373 def EI2(self, value: bool) -> None: 2374 self._Entity.EI2 = value 2375 2376 @GJ.setter 2377 def GJ(self, value: bool) -> None: 2378 self._Entity.GJ = value 2379 2380 @IsActive.setter 2381 def IsActive(self, value: bool) -> None: 2382 self._Entity.IsActive = value
Represents an entity with an ID and Name.
Inherited Members
2385class ManualConstraintWithDesignLoad(ManualConstraint): 2386 def __init__(self, manualConstraintWithDesignLoad: _api.ManualConstraintWithDesignLoad): 2387 self._Entity = manualConstraintWithDesignLoad 2388 2389 @property 2390 def UseAllDesignLoads(self) -> bool: 2391 return self._Entity.UseAllDesignLoads 2392 2393 @property 2394 def DesignLoadCase(self) -> str: 2395 return self._Entity.DesignLoadCase 2396 2397 @UseAllDesignLoads.setter 2398 def UseAllDesignLoads(self, value: bool) -> None: 2399 self._Entity.UseAllDesignLoads = value 2400 2401 @DesignLoadCase.setter 2402 def DesignLoadCase(self, value: str) -> None: 2403 self._Entity.DesignLoadCase = value
Represents an entity with an ID and Name.
2406class BucklingManualConstraint(ManualConstraintWithDesignLoad): 2407 def __init__(self, bucklingManualConstraint: _api.BucklingManualConstraint): 2408 self._Entity = bucklingManualConstraint
Represents an entity with an ID and Name.
2411class DisplacementManualConstraint(ManualConstraintWithDesignLoad): 2412 def __init__(self, displacementManualConstraint: _api.DisplacementManualConstraint): 2413 self._Entity = displacementManualConstraint 2414 2415 @property 2416 def DOF(self) -> types.DegreeOfFreedom: 2417 return types.DegreeOfFreedom[self._Entity.DOF.ToString()] 2418 2419 @property 2420 def Nodes(self) -> list[int]: 2421 return [int32 for int32 in self._Entity.Nodes] 2422 2423 @property 2424 def RefNodes(self) -> list[int]: 2425 return [int32 for int32 in self._Entity.RefNodes] 2426 2427 @DOF.setter 2428 def DOF(self, value: types.DegreeOfFreedom) -> None: 2429 self._Entity.DOF = _types.DegreeOfFreedom(value.value) 2430 2431 def AddNodes(self, ids: list[int]) -> None: 2432 idsList = MakeCSharpIntList(ids) 2433 return self._Entity.AddNodes(idsList) 2434 2435 def RemoveNodes(self, ids: list[int]) -> None: 2436 idsList = MakeCSharpIntList(ids) 2437 return self._Entity.RemoveNodes(idsList) 2438 2439 def AddRefNodes(self, ids: list[int]) -> None: 2440 idsList = MakeCSharpIntList(ids) 2441 return self._Entity.AddRefNodes(idsList) 2442 2443 def RemoveRefNodes(self, ids: list[int]) -> None: 2444 idsList = MakeCSharpIntList(ids) 2445 return self._Entity.RemoveRefNodes(idsList)
Represents an entity with an ID and Name.
2448class FrequencyManualConstraint(ManualConstraintWithDesignLoad): 2449 def __init__(self, frequencyManualConstraint: _api.FrequencyManualConstraint): 2450 self._Entity = frequencyManualConstraint
Represents an entity with an ID and Name.
2453class StaticMomentManualConstraint(ManualConstraint): 2454 def __init__(self, staticMomentManualConstraint: _api.StaticMomentManualConstraint): 2455 self._Entity = staticMomentManualConstraint
Represents an entity with an ID and Name.
2458class AutomatedConstraintCol(IdNameEntityCol[AutomatedConstraint]): 2459 def __init__(self, automatedConstraintCol: _api.AutomatedConstraintCol): 2460 self._Entity = automatedConstraintCol 2461 self._CollectedClass = AutomatedConstraint 2462 2463 @property 2464 def AutomatedConstraintColList(self) -> tuple[AutomatedConstraint]: 2465 return tuple([AutomatedConstraint(automatedConstraintCol) for automatedConstraintCol in self._Entity]) 2466 2467 def AddBucklingConstraint(self, designLoads: list[str], eigenvalue: float, name: str = None) -> BucklingAutomatedConstraint: 2468 designLoadsList = List[str]() 2469 if designLoads is not None: 2470 for thing in designLoads: 2471 if thing is not None: 2472 designLoadsList.Add(thing) 2473 return BucklingAutomatedConstraint(self._Entity.AddBucklingConstraint(designLoadsList, eigenvalue, name)) 2474 2475 def AddFrequencyConstraint(self, designLoads: list[str], eigenvalue: float, name: str = None) -> FrequencyAutomatedConstraint: 2476 designLoadsList = List[str]() 2477 if designLoads is not None: 2478 for thing in designLoads: 2479 if thing is not None: 2480 designLoadsList.Add(thing) 2481 return FrequencyAutomatedConstraint(self._Entity.AddFrequencyConstraint(designLoadsList, eigenvalue, name)) 2482 2483 def AddDisplacementConstraint(self, designLoads: list[str], gridId: int, limit: float, name: str = None) -> DisplacementAutomatedConstraint: 2484 designLoadsList = List[str]() 2485 if designLoads is not None: 2486 for thing in designLoads: 2487 if thing is not None: 2488 designLoadsList.Add(thing) 2489 return DisplacementAutomatedConstraint(self._Entity.AddDisplacementConstraint(designLoadsList, gridId, limit, name)) 2490 2491 def AddRotationConstraint(self, designLoads: list[str], gridId: int, limit: float, name: str = None) -> RotationAutomatedConstraint: 2492 designLoadsList = List[str]() 2493 if designLoads is not None: 2494 for thing in designLoads: 2495 if thing is not None: 2496 designLoadsList.Add(thing) 2497 return RotationAutomatedConstraint(self._Entity.AddRotationConstraint(designLoadsList, gridId, limit, name)) 2498 2499 @overload 2500 def Delete(self, id: int) -> bool: ... 2501 2502 @overload 2503 def Delete(self, name: str) -> bool: ... 2504 2505 @overload 2506 def GetBuckling(self, id: int) -> BucklingAutomatedConstraint: ... 2507 2508 @overload 2509 def GetBuckling(self, name: str) -> BucklingAutomatedConstraint: ... 2510 2511 @overload 2512 def GetFrequency(self, id: int) -> FrequencyAutomatedConstraint: ... 2513 2514 @overload 2515 def GetFrequency(self, name: str) -> FrequencyAutomatedConstraint: ... 2516 2517 @overload 2518 def GetRotation(self, id: int) -> RotationAutomatedConstraint: ... 2519 2520 @overload 2521 def GetRotation(self, name: str) -> RotationAutomatedConstraint: ... 2522 2523 @overload 2524 def GetDisplacement(self, id: int) -> DisplacementAutomatedConstraint: ... 2525 2526 @overload 2527 def GetDisplacement(self, name: str) -> DisplacementAutomatedConstraint: ... 2528 2529 @overload 2530 def Get(self, name: str) -> AutomatedConstraint: ... 2531 2532 @overload 2533 def Get(self, id: int) -> AutomatedConstraint: ... 2534 2535 def Delete(self, item1 = None) -> bool: 2536 if isinstance(item1, int): 2537 return self._Entity.Delete(item1) 2538 2539 if isinstance(item1, str): 2540 return self._Entity.Delete(item1) 2541 2542 return self._Entity.Delete(item1) 2543 2544 def GetBuckling(self, item1 = None) -> BucklingAutomatedConstraint: 2545 if isinstance(item1, int): 2546 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2547 2548 if isinstance(item1, str): 2549 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2550 2551 return self._Entity.GetBuckling(item1) 2552 2553 def GetFrequency(self, item1 = None) -> FrequencyAutomatedConstraint: 2554 if isinstance(item1, int): 2555 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2556 2557 if isinstance(item1, str): 2558 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2559 2560 return self._Entity.GetFrequency(item1) 2561 2562 def GetRotation(self, item1 = None) -> RotationAutomatedConstraint: 2563 if isinstance(item1, int): 2564 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2565 2566 if isinstance(item1, str): 2567 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2568 2569 return self._Entity.GetRotation(item1) 2570 2571 def GetDisplacement(self, item1 = None) -> DisplacementAutomatedConstraint: 2572 if isinstance(item1, int): 2573 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2574 2575 if isinstance(item1, str): 2576 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2577 2578 return self._Entity.GetDisplacement(item1) 2579 2580 def Get(self, item1 = None) -> AutomatedConstraint: 2581 if isinstance(item1, str): 2582 return AutomatedConstraint(super().Get(item1)) 2583 2584 if isinstance(item1, int): 2585 return AutomatedConstraint(super().Get(item1)) 2586 2587 return self._Entity.Get(item1) 2588 2589 def __getitem__(self, index: int): 2590 return self.AutomatedConstraintColList[index] 2591 2592 def __iter__(self): 2593 yield from self.AutomatedConstraintColList 2594 2595 def __len__(self): 2596 return len(self.AutomatedConstraintColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
2467 def AddBucklingConstraint(self, designLoads: list[str], eigenvalue: float, name: str = None) -> BucklingAutomatedConstraint: 2468 designLoadsList = List[str]() 2469 if designLoads is not None: 2470 for thing in designLoads: 2471 if thing is not None: 2472 designLoadsList.Add(thing) 2473 return BucklingAutomatedConstraint(self._Entity.AddBucklingConstraint(designLoadsList, eigenvalue, name))
2475 def AddFrequencyConstraint(self, designLoads: list[str], eigenvalue: float, name: str = None) -> FrequencyAutomatedConstraint: 2476 designLoadsList = List[str]() 2477 if designLoads is not None: 2478 for thing in designLoads: 2479 if thing is not None: 2480 designLoadsList.Add(thing) 2481 return FrequencyAutomatedConstraint(self._Entity.AddFrequencyConstraint(designLoadsList, eigenvalue, name))
2483 def AddDisplacementConstraint(self, designLoads: list[str], gridId: int, limit: float, name: str = None) -> DisplacementAutomatedConstraint: 2484 designLoadsList = List[str]() 2485 if designLoads is not None: 2486 for thing in designLoads: 2487 if thing is not None: 2488 designLoadsList.Add(thing) 2489 return DisplacementAutomatedConstraint(self._Entity.AddDisplacementConstraint(designLoadsList, gridId, limit, name))
2491 def AddRotationConstraint(self, designLoads: list[str], gridId: int, limit: float, name: str = None) -> RotationAutomatedConstraint: 2492 designLoadsList = List[str]() 2493 if designLoads is not None: 2494 for thing in designLoads: 2495 if thing is not None: 2496 designLoadsList.Add(thing) 2497 return RotationAutomatedConstraint(self._Entity.AddRotationConstraint(designLoadsList, gridId, limit, name))
2544 def GetBuckling(self, item1 = None) -> BucklingAutomatedConstraint: 2545 if isinstance(item1, int): 2546 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2547 2548 if isinstance(item1, str): 2549 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2550 2551 return self._Entity.GetBuckling(item1)
2553 def GetFrequency(self, item1 = None) -> FrequencyAutomatedConstraint: 2554 if isinstance(item1, int): 2555 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2556 2557 if isinstance(item1, str): 2558 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2559 2560 return self._Entity.GetFrequency(item1)
2562 def GetRotation(self, item1 = None) -> RotationAutomatedConstraint: 2563 if isinstance(item1, int): 2564 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2565 2566 if isinstance(item1, str): 2567 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2568 2569 return self._Entity.GetRotation(item1)
2571 def GetDisplacement(self, item1 = None) -> DisplacementAutomatedConstraint: 2572 if isinstance(item1, int): 2573 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2574 2575 if isinstance(item1, str): 2576 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2577 2578 return self._Entity.GetDisplacement(item1)
Inherited Members
2599class ManualConstraintCol(IdNameEntityCol[ManualConstraint]): 2600 def __init__(self, manualConstraintCol: _api.ManualConstraintCol): 2601 self._Entity = manualConstraintCol 2602 self._CollectedClass = ManualConstraint 2603 2604 @property 2605 def ManualConstraintColList(self) -> tuple[ManualConstraint]: 2606 return tuple([ManualConstraint(manualConstraintCol) for manualConstraintCol in self._Entity]) 2607 2608 @overload 2609 def GetFrequency(self, id: int) -> FrequencyManualConstraint: ... 2610 2611 @overload 2612 def GetFrequency(self, name: str) -> FrequencyManualConstraint: ... 2613 2614 @overload 2615 def GetBuckling(self, id: int) -> BucklingManualConstraint: ... 2616 2617 @overload 2618 def GetBuckling(self, name: str) -> BucklingManualConstraint: ... 2619 2620 @overload 2621 def GetDisplacement(self, id: int) -> DisplacementManualConstraint: ... 2622 2623 @overload 2624 def GetDisplacement(self, name: str) -> DisplacementManualConstraint: ... 2625 2626 @overload 2627 def GetStaticMoment(self, id: int) -> StaticMomentManualConstraint: ... 2628 2629 @overload 2630 def GetStaticMoment(self, name: str) -> StaticMomentManualConstraint: ... 2631 2632 def AddFrequencyConstraint(self, setName: str, limit: float, name: str = None) -> FrequencyManualConstraint: 2633 return FrequencyManualConstraint(self._Entity.AddFrequencyConstraint(setName, limit, name)) 2634 2635 def AddBucklingConstraint(self, setName: str, limit: float, name: str = None) -> BucklingManualConstraint: 2636 return BucklingManualConstraint(self._Entity.AddBucklingConstraint(setName, limit, name)) 2637 2638 def AddStaticMomentManualConstraint(self, setName: str, limit: float, name: str = None) -> StaticMomentManualConstraint: 2639 return StaticMomentManualConstraint(self._Entity.AddStaticMomentManualConstraint(setName, limit, name)) 2640 2641 def AddDisplacementConstraint(self, setName: str, gridIds: list[int], limit: float, name: str = None) -> DisplacementManualConstraint: 2642 gridIdsList = MakeCSharpIntList(gridIds) 2643 return DisplacementManualConstraint(self._Entity.AddDisplacementConstraint(setName, gridIdsList, limit, name)) 2644 2645 @overload 2646 def DeleteConstraint(self, name: str) -> bool: ... 2647 2648 @overload 2649 def DeleteConstraint(self, id: int) -> bool: ... 2650 2651 @overload 2652 def Get(self, name: str) -> ManualConstraint: ... 2653 2654 @overload 2655 def Get(self, id: int) -> ManualConstraint: ... 2656 2657 def GetFrequency(self, item1 = None) -> FrequencyManualConstraint: 2658 if isinstance(item1, int): 2659 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2660 2661 if isinstance(item1, str): 2662 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2663 2664 return self._Entity.GetFrequency(item1) 2665 2666 def GetBuckling(self, item1 = None) -> BucklingManualConstraint: 2667 if isinstance(item1, int): 2668 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2669 2670 if isinstance(item1, str): 2671 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2672 2673 return self._Entity.GetBuckling(item1) 2674 2675 def GetDisplacement(self, item1 = None) -> DisplacementManualConstraint: 2676 if isinstance(item1, int): 2677 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2678 2679 if isinstance(item1, str): 2680 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2681 2682 return self._Entity.GetDisplacement(item1) 2683 2684 def GetStaticMoment(self, item1 = None) -> StaticMomentManualConstraint: 2685 if isinstance(item1, int): 2686 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2687 2688 if isinstance(item1, str): 2689 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2690 2691 return self._Entity.GetStaticMoment(item1) 2692 2693 def DeleteConstraint(self, item1 = None) -> bool: 2694 if isinstance(item1, str): 2695 return self._Entity.DeleteConstraint(item1) 2696 2697 if isinstance(item1, int): 2698 return self._Entity.DeleteConstraint(item1) 2699 2700 return self._Entity.DeleteConstraint(item1) 2701 2702 def Get(self, item1 = None) -> ManualConstraint: 2703 if isinstance(item1, str): 2704 return ManualConstraint(super().Get(item1)) 2705 2706 if isinstance(item1, int): 2707 return ManualConstraint(super().Get(item1)) 2708 2709 return self._Entity.Get(item1) 2710 2711 def __getitem__(self, index: int): 2712 return self.ManualConstraintColList[index] 2713 2714 def __iter__(self): 2715 yield from self.ManualConstraintColList 2716 2717 def __len__(self): 2718 return len(self.ManualConstraintColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
2657 def GetFrequency(self, item1 = None) -> FrequencyManualConstraint: 2658 if isinstance(item1, int): 2659 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2660 2661 if isinstance(item1, str): 2662 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2663 2664 return self._Entity.GetFrequency(item1)
2666 def GetBuckling(self, item1 = None) -> BucklingManualConstraint: 2667 if isinstance(item1, int): 2668 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2669 2670 if isinstance(item1, str): 2671 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2672 2673 return self._Entity.GetBuckling(item1)
2675 def GetDisplacement(self, item1 = None) -> DisplacementManualConstraint: 2676 if isinstance(item1, int): 2677 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2678 2679 if isinstance(item1, str): 2680 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2681 2682 return self._Entity.GetDisplacement(item1)
2684 def GetStaticMoment(self, item1 = None) -> StaticMomentManualConstraint: 2685 if isinstance(item1, int): 2686 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2687 2688 if isinstance(item1, str): 2689 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2690 2691 return self._Entity.GetStaticMoment(item1)
2641 def AddDisplacementConstraint(self, setName: str, gridIds: list[int], limit: float, name: str = None) -> DisplacementManualConstraint: 2642 gridIdsList = MakeCSharpIntList(gridIds) 2643 return DisplacementManualConstraint(self._Entity.AddDisplacementConstraint(setName, gridIdsList, limit, name))
Inherited Members
2721class HyperFea: 2722 def __init__(self, hyperFea: _api.HyperFea): 2723 self._Entity = hyperFea 2724 2725 @property 2726 def ManualConstraints(self) -> ManualConstraintCol: 2727 result = self._Entity.ManualConstraints 2728 return ManualConstraintCol(result) if result is not None else None 2729 2730 @property 2731 def AutomatedConstraints(self) -> AutomatedConstraintCol: 2732 result = self._Entity.AutomatedConstraints 2733 return AutomatedConstraintCol(result) if result is not None else None 2734 2735 def RunIterations(self, numberOfIterations: int, startWithSizing: bool, deleteElementOptimizationPlies: bool) -> None: 2736 return self._Entity.RunIterations(numberOfIterations, startWithSizing, deleteElementOptimizationPlies) 2737 2738 def SetupSolver(self, solverPath: str, arguments: str) -> types.SimpleStatus: 2739 return types.SimpleStatus(self._Entity.SetupSolver(solverPath, arguments)) 2740 2741 def TestSolver(self) -> types.SimpleStatus: 2742 ''' 2743 Test FEA solver setup. 2744 ''' 2745 return types.SimpleStatus(self._Entity.TestSolver()) 2746 2747 def GetSolverSetup(self) -> types.HyperFeaSolver: 2748 ''' 2749 Get the current FEA solver setup. 2750 ''' 2751 return types.HyperFeaSolver(self._Entity.GetSolverSetup())
2754class FoamTemperature: 2755 ''' 2756 Foam material temperature dependent properties. 2757 ''' 2758 def __init__(self, foamTemperature: _api.FoamTemperature): 2759 self._Entity = foamTemperature 2760 2761 @property 2762 def Temperature(self) -> float: 2763 return self._Entity.Temperature 2764 2765 @property 2766 def Et(self) -> float: 2767 return self._Entity.Et 2768 2769 @property 2770 def Ec(self) -> float: 2771 return self._Entity.Ec 2772 2773 @property 2774 def G(self) -> float: 2775 return self._Entity.G 2776 2777 @property 2778 def Ef(self) -> float: 2779 return self._Entity.Ef 2780 2781 @property 2782 def Ftu(self) -> float: 2783 return self._Entity.Ftu 2784 2785 @property 2786 def Fcu(self) -> float: 2787 return self._Entity.Fcu 2788 2789 @property 2790 def Fsu(self) -> float: 2791 return self._Entity.Fsu 2792 2793 @property 2794 def Ffu(self) -> float: 2795 return self._Entity.Ffu 2796 2797 @property 2798 def K(self) -> float: 2799 return self._Entity.K 2800 2801 @property 2802 def C(self) -> float: 2803 return self._Entity.C 2804 2805 @Temperature.setter 2806 def Temperature(self, value: float) -> None: 2807 self._Entity.Temperature = value 2808 2809 @Et.setter 2810 def Et(self, value: float) -> None: 2811 self._Entity.Et = value 2812 2813 @Ec.setter 2814 def Ec(self, value: float) -> None: 2815 self._Entity.Ec = value 2816 2817 @G.setter 2818 def G(self, value: float) -> None: 2819 self._Entity.G = value 2820 2821 @Ef.setter 2822 def Ef(self, value: float) -> None: 2823 self._Entity.Ef = value 2824 2825 @Ftu.setter 2826 def Ftu(self, value: float) -> None: 2827 self._Entity.Ftu = value 2828 2829 @Fcu.setter 2830 def Fcu(self, value: float) -> None: 2831 self._Entity.Fcu = value 2832 2833 @Fsu.setter 2834 def Fsu(self, value: float) -> None: 2835 self._Entity.Fsu = value 2836 2837 @Ffu.setter 2838 def Ffu(self, value: float) -> None: 2839 self._Entity.Ffu = value 2840 2841 @K.setter 2842 def K(self, value: float) -> None: 2843 self._Entity.K = value 2844 2845 @C.setter 2846 def C(self, value: float) -> None: 2847 self._Entity.C = value
Foam material temperature dependent properties.
2850class Foam: 2851 ''' 2852 Foam material. 2853 ''' 2854 def __init__(self, foam: _api.Foam): 2855 self._Entity = foam 2856 2857 @property 2858 def MaterialFamilyName(self) -> str: 2859 return self._Entity.MaterialFamilyName 2860 2861 @property 2862 def Id(self) -> int: 2863 return self._Entity.Id 2864 2865 @property 2866 def CreationDate(self) -> DateTime: 2867 return self._Entity.CreationDate 2868 2869 @property 2870 def ModificationDate(self) -> DateTime: 2871 return self._Entity.ModificationDate 2872 2873 @property 2874 def Name(self) -> str: 2875 return self._Entity.Name 2876 2877 @property 2878 def Wet(self) -> bool: 2879 return self._Entity.Wet 2880 2881 @property 2882 def Density(self) -> float: 2883 return self._Entity.Density 2884 2885 @property 2886 def Form(self) -> str: 2887 return self._Entity.Form 2888 2889 @property 2890 def Specification(self) -> str: 2891 return self._Entity.Specification 2892 2893 @property 2894 def MaterialDescription(self) -> str: 2895 return self._Entity.MaterialDescription 2896 2897 @property 2898 def UserNote(self) -> str: 2899 return self._Entity.UserNote 2900 2901 @property 2902 def FemMaterialId(self) -> int: 2903 return self._Entity.FemMaterialId 2904 2905 @property 2906 def Cost(self) -> float: 2907 return self._Entity.Cost 2908 2909 @property 2910 def BucklingStiffnessKnockdown(self) -> float: 2911 return self._Entity.BucklingStiffnessKnockdown 2912 2913 @property 2914 def Absorption(self) -> float: 2915 return self._Entity.Absorption 2916 2917 @property 2918 def Manufacturer(self) -> str: 2919 return self._Entity.Manufacturer 2920 2921 @property 2922 def FoamTemperatureProperties(self) -> list[FoamTemperature]: 2923 return [FoamTemperature(foamTemperature) for foamTemperature in self._Entity.FoamTemperatureProperties] 2924 2925 @MaterialFamilyName.setter 2926 def MaterialFamilyName(self, value: str) -> None: 2927 self._Entity.MaterialFamilyName = value 2928 2929 @Name.setter 2930 def Name(self, value: str) -> None: 2931 self._Entity.Name = value 2932 2933 @Wet.setter 2934 def Wet(self, value: bool) -> None: 2935 self._Entity.Wet = value 2936 2937 @Density.setter 2938 def Density(self, value: float) -> None: 2939 self._Entity.Density = value 2940 2941 @Form.setter 2942 def Form(self, value: str) -> None: 2943 self._Entity.Form = value 2944 2945 @Specification.setter 2946 def Specification(self, value: str) -> None: 2947 self._Entity.Specification = value 2948 2949 @MaterialDescription.setter 2950 def MaterialDescription(self, value: str) -> None: 2951 self._Entity.MaterialDescription = value 2952 2953 @UserNote.setter 2954 def UserNote(self, value: str) -> None: 2955 self._Entity.UserNote = value 2956 2957 @FemMaterialId.setter 2958 def FemMaterialId(self, value: int) -> None: 2959 self._Entity.FemMaterialId = value 2960 2961 @Cost.setter 2962 def Cost(self, value: float) -> None: 2963 self._Entity.Cost = value 2964 2965 @BucklingStiffnessKnockdown.setter 2966 def BucklingStiffnessKnockdown(self, value: float) -> None: 2967 self._Entity.BucklingStiffnessKnockdown = value 2968 2969 @Absorption.setter 2970 def Absorption(self, value: float) -> None: 2971 self._Entity.Absorption = value 2972 2973 @Manufacturer.setter 2974 def Manufacturer(self, value: str) -> None: 2975 self._Entity.Manufacturer = value 2976 2977 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, g: float, ftu: float, fcu: float, fsu: float, ef: float = None, ffu: float = None, k: float = None, c: float = None) -> FoamTemperature: 2978 return FoamTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, g, ftu, fcu, fsu, ef, ffu, k, c)) 2979 2980 def DeleteTemperatureProperty(self, temperature: float) -> bool: 2981 return self._Entity.DeleteTemperatureProperty(temperature) 2982 2983 def GetTemperature(self, lookupTemperature: float) -> FoamTemperature: 2984 return FoamTemperature(self._Entity.GetTemperature(lookupTemperature)) 2985 2986 def Save(self) -> None: 2987 ''' 2988 Save any changes to this foam material to the database. 2989 ''' 2990 return self._Entity.Save()
Foam material.
2977 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, g: float, ftu: float, fcu: float, fsu: float, ef: float = None, ffu: float = None, k: float = None, c: float = None) -> FoamTemperature: 2978 return FoamTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, g, ftu, fcu, fsu, ef, ffu, k, c))
2993class HoneycombTemperature: 2994 ''' 2995 Honeycomb material temperature dependent properties. 2996 ''' 2997 def __init__(self, honeycombTemperature: _api.HoneycombTemperature): 2998 self._Entity = honeycombTemperature 2999 3000 @property 3001 def Temperature(self) -> float: 3002 return self._Entity.Temperature 3003 3004 @property 3005 def Et(self) -> float: 3006 return self._Entity.Et 3007 3008 @property 3009 def Ec(self) -> float: 3010 return self._Entity.Ec 3011 3012 @property 3013 def Gw(self) -> float: 3014 return self._Entity.Gw 3015 3016 @property 3017 def Gl(self) -> float: 3018 return self._Entity.Gl 3019 3020 @property 3021 def Ftu(self) -> float: 3022 return self._Entity.Ftu 3023 3024 @property 3025 def Fcus(self) -> float: 3026 return self._Entity.Fcus 3027 3028 @property 3029 def Fcub(self) -> float: 3030 return self._Entity.Fcub 3031 3032 @property 3033 def Fcuc(self) -> float: 3034 return self._Entity.Fcuc 3035 3036 @property 3037 def Fsuw(self) -> float: 3038 return self._Entity.Fsuw 3039 3040 @property 3041 def Fsul(self) -> float: 3042 return self._Entity.Fsul 3043 3044 @property 3045 def SScfl(self) -> float: 3046 return self._Entity.SScfl 3047 3048 @property 3049 def SScfh(self) -> float: 3050 return self._Entity.SScfh 3051 3052 @property 3053 def Kl(self) -> float: 3054 return self._Entity.Kl 3055 3056 @property 3057 def Kw(self) -> float: 3058 return self._Entity.Kw 3059 3060 @property 3061 def Kt(self) -> float: 3062 return self._Entity.Kt 3063 3064 @property 3065 def C(self) -> float: 3066 return self._Entity.C 3067 3068 @Temperature.setter 3069 def Temperature(self, value: float) -> None: 3070 self._Entity.Temperature = value 3071 3072 @Et.setter 3073 def Et(self, value: float) -> None: 3074 self._Entity.Et = value 3075 3076 @Ec.setter 3077 def Ec(self, value: float) -> None: 3078 self._Entity.Ec = value 3079 3080 @Gw.setter 3081 def Gw(self, value: float) -> None: 3082 self._Entity.Gw = value 3083 3084 @Gl.setter 3085 def Gl(self, value: float) -> None: 3086 self._Entity.Gl = value 3087 3088 @Ftu.setter 3089 def Ftu(self, value: float) -> None: 3090 self._Entity.Ftu = value 3091 3092 @Fcus.setter 3093 def Fcus(self, value: float) -> None: 3094 self._Entity.Fcus = value 3095 3096 @Fcub.setter 3097 def Fcub(self, value: float) -> None: 3098 self._Entity.Fcub = value 3099 3100 @Fcuc.setter 3101 def Fcuc(self, value: float) -> None: 3102 self._Entity.Fcuc = value 3103 3104 @Fsuw.setter 3105 def Fsuw(self, value: float) -> None: 3106 self._Entity.Fsuw = value 3107 3108 @Fsul.setter 3109 def Fsul(self, value: float) -> None: 3110 self._Entity.Fsul = value 3111 3112 @SScfl.setter 3113 def SScfl(self, value: float) -> None: 3114 self._Entity.SScfl = value 3115 3116 @SScfh.setter 3117 def SScfh(self, value: float) -> None: 3118 self._Entity.SScfh = value 3119 3120 @Kl.setter 3121 def Kl(self, value: float) -> None: 3122 self._Entity.Kl = value 3123 3124 @Kw.setter 3125 def Kw(self, value: float) -> None: 3126 self._Entity.Kw = value 3127 3128 @Kt.setter 3129 def Kt(self, value: float) -> None: 3130 self._Entity.Kt = value 3131 3132 @C.setter 3133 def C(self, value: float) -> None: 3134 self._Entity.C = value
Honeycomb material temperature dependent properties.
3137class Honeycomb: 3138 ''' 3139 Honeycomb material. 3140 ''' 3141 def __init__(self, honeycomb: _api.Honeycomb): 3142 self._Entity = honeycomb 3143 3144 @property 3145 def MaterialFamilyName(self) -> str: 3146 return self._Entity.MaterialFamilyName 3147 3148 @property 3149 def Id(self) -> int: 3150 return self._Entity.Id 3151 3152 @property 3153 def CreationDate(self) -> DateTime: 3154 return self._Entity.CreationDate 3155 3156 @property 3157 def ModificationDate(self) -> DateTime: 3158 return self._Entity.ModificationDate 3159 3160 @property 3161 def Name(self) -> str: 3162 return self._Entity.Name 3163 3164 @property 3165 def Wet(self) -> bool: 3166 return self._Entity.Wet 3167 3168 @property 3169 def Density(self) -> float: 3170 return self._Entity.Density 3171 3172 @property 3173 def Form(self) -> str: 3174 return self._Entity.Form 3175 3176 @property 3177 def Specification(self) -> str: 3178 return self._Entity.Specification 3179 3180 @property 3181 def MaterialDescription(self) -> str: 3182 return self._Entity.MaterialDescription 3183 3184 @property 3185 def UserNote(self) -> str: 3186 return self._Entity.UserNote 3187 3188 @property 3189 def FemMaterialId(self) -> int: 3190 return self._Entity.FemMaterialId 3191 3192 @property 3193 def Cost(self) -> float: 3194 return self._Entity.Cost 3195 3196 @property 3197 def CellSize(self) -> float: 3198 return self._Entity.CellSize 3199 3200 @property 3201 def Manufacturer(self) -> str: 3202 return self._Entity.Manufacturer 3203 3204 @property 3205 def HoneycombTemperatureProperties(self) -> list[HoneycombTemperature]: 3206 return [HoneycombTemperature(honeycombTemperature) for honeycombTemperature in self._Entity.HoneycombTemperatureProperties] 3207 3208 @MaterialFamilyName.setter 3209 def MaterialFamilyName(self, value: str) -> None: 3210 self._Entity.MaterialFamilyName = value 3211 3212 @Name.setter 3213 def Name(self, value: str) -> None: 3214 self._Entity.Name = value 3215 3216 @Wet.setter 3217 def Wet(self, value: bool) -> None: 3218 self._Entity.Wet = value 3219 3220 @Density.setter 3221 def Density(self, value: float) -> None: 3222 self._Entity.Density = value 3223 3224 @Form.setter 3225 def Form(self, value: str) -> None: 3226 self._Entity.Form = value 3227 3228 @Specification.setter 3229 def Specification(self, value: str) -> None: 3230 self._Entity.Specification = value 3231 3232 @MaterialDescription.setter 3233 def MaterialDescription(self, value: str) -> None: 3234 self._Entity.MaterialDescription = value 3235 3236 @UserNote.setter 3237 def UserNote(self, value: str) -> None: 3238 self._Entity.UserNote = value 3239 3240 @FemMaterialId.setter 3241 def FemMaterialId(self, value: int) -> None: 3242 self._Entity.FemMaterialId = value 3243 3244 @Cost.setter 3245 def Cost(self, value: float) -> None: 3246 self._Entity.Cost = value 3247 3248 @CellSize.setter 3249 def CellSize(self, value: float) -> None: 3250 self._Entity.CellSize = value 3251 3252 @Manufacturer.setter 3253 def Manufacturer(self, value: str) -> None: 3254 self._Entity.Manufacturer = value 3255 3256 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, gw: float, gl: float, ftu: float, fcus: float, fcub: float, fcuc: float, fsuw: float, fsul: float, sScfl: float = None, sScfh: float = None, k1: float = None, k2: float = None, k3: float = None, c: float = None) -> HoneycombTemperature: 3257 return HoneycombTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, gw, gl, ftu, fcus, fcub, fcuc, fsuw, fsul, sScfl, sScfh, k1, k2, k3, c)) 3258 3259 def DeleteTemperatureProperty(self, temperature: float) -> bool: 3260 return self._Entity.DeleteTemperatureProperty(temperature) 3261 3262 def GetTemperature(self, lookupTemperature: float) -> HoneycombTemperature: 3263 return HoneycombTemperature(self._Entity.GetTemperature(lookupTemperature)) 3264 3265 def Save(self) -> None: 3266 ''' 3267 Save any changes to this honeycomb material to the database. 3268 ''' 3269 return self._Entity.Save()
Honeycomb material.
3256 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, gw: float, gl: float, ftu: float, fcus: float, fcub: float, fcuc: float, fsuw: float, fsul: float, sScfl: float = None, sScfh: float = None, k1: float = None, k2: float = None, k3: float = None, c: float = None) -> HoneycombTemperature: 3257 return HoneycombTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, gw, gl, ftu, fcus, fcub, fcuc, fsuw, fsul, sScfl, sScfh, k1, k2, k3, c))
3272class IsotropicTemperature: 3273 ''' 3274 Isotropic material temperature dependent properties. 3275 ''' 3276 def __init__(self, isotropicTemperature: _api.IsotropicTemperature): 3277 self._Entity = isotropicTemperature 3278 3279 @property 3280 def Temperature(self) -> float: 3281 return self._Entity.Temperature 3282 3283 @property 3284 def Et(self) -> float: 3285 return self._Entity.Et 3286 3287 @property 3288 def Ec(self) -> float: 3289 return self._Entity.Ec 3290 3291 @property 3292 def G(self) -> float: 3293 return self._Entity.G 3294 3295 @property 3296 def n(self) -> float: 3297 return self._Entity.n 3298 3299 @property 3300 def F02(self) -> float: 3301 return self._Entity.F02 3302 3303 @property 3304 def FtuL(self) -> float: 3305 return self._Entity.FtuL 3306 3307 @property 3308 def FtyL(self) -> float: 3309 return self._Entity.FtyL 3310 3311 @property 3312 def FcyL(self) -> float: 3313 return self._Entity.FcyL 3314 3315 @property 3316 def FtuLT(self) -> float: 3317 return self._Entity.FtuLT 3318 3319 @property 3320 def FtyLT(self) -> float: 3321 return self._Entity.FtyLT 3322 3323 @property 3324 def FcyLT(self) -> float: 3325 return self._Entity.FcyLT 3326 3327 @property 3328 def Fsu(self) -> float: 3329 return self._Entity.Fsu 3330 3331 @property 3332 def Fbru15(self) -> float: 3333 return self._Entity.Fbru15 3334 3335 @property 3336 def Fbry15(self) -> float: 3337 return self._Entity.Fbry15 3338 3339 @property 3340 def Fbru20(self) -> float: 3341 return self._Entity.Fbru20 3342 3343 @property 3344 def Fbry20(self) -> float: 3345 return self._Entity.Fbry20 3346 3347 @property 3348 def alpha(self) -> float: 3349 return self._Entity.alpha 3350 3351 @property 3352 def K(self) -> float: 3353 return self._Entity.K 3354 3355 @property 3356 def C(self) -> float: 3357 return self._Entity.C 3358 3359 @property 3360 def etyL(self) -> float: 3361 return self._Entity.etyL 3362 3363 @property 3364 def ecyL(self) -> float: 3365 return self._Entity.ecyL 3366 3367 @property 3368 def etyLT(self) -> float: 3369 return self._Entity.etyLT 3370 3371 @property 3372 def ecyLT(self) -> float: 3373 return self._Entity.ecyLT 3374 3375 @property 3376 def esu(self) -> float: 3377 return self._Entity.esu 3378 3379 @property 3380 def Fpadh(self) -> float: 3381 return self._Entity.Fpadh 3382 3383 @property 3384 def Fsadh(self) -> float: 3385 return self._Entity.Fsadh 3386 3387 @property 3388 def esadh(self) -> float: 3389 return self._Entity.esadh 3390 3391 @property 3392 def cd(self) -> float: 3393 return self._Entity.cd 3394 3395 @property 3396 def Ffwt(self) -> float: 3397 return self._Entity.Ffwt 3398 3399 @property 3400 def Ffxz(self) -> float: 3401 return self._Entity.Ffxz 3402 3403 @property 3404 def Ffyz(self) -> float: 3405 return self._Entity.Ffyz 3406 3407 @property 3408 def FtFatigue(self) -> float: 3409 return self._Entity.FtFatigue 3410 3411 @property 3412 def FcFatigue(self) -> float: 3413 return self._Entity.FcFatigue 3414 3415 @Temperature.setter 3416 def Temperature(self, value: float) -> None: 3417 self._Entity.Temperature = value 3418 3419 @Et.setter 3420 def Et(self, value: float) -> None: 3421 self._Entity.Et = value 3422 3423 @Ec.setter 3424 def Ec(self, value: float) -> None: 3425 self._Entity.Ec = value 3426 3427 @G.setter 3428 def G(self, value: float) -> None: 3429 self._Entity.G = value 3430 3431 @n.setter 3432 def n(self, value: float) -> None: 3433 self._Entity.n = value 3434 3435 @F02.setter 3436 def F02(self, value: float) -> None: 3437 self._Entity.F02 = value 3438 3439 @FtuL.setter 3440 def FtuL(self, value: float) -> None: 3441 self._Entity.FtuL = value 3442 3443 @FtyL.setter 3444 def FtyL(self, value: float) -> None: 3445 self._Entity.FtyL = value 3446 3447 @FcyL.setter 3448 def FcyL(self, value: float) -> None: 3449 self._Entity.FcyL = value 3450 3451 @FtuLT.setter 3452 def FtuLT(self, value: float) -> None: 3453 self._Entity.FtuLT = value 3454 3455 @FtyLT.setter 3456 def FtyLT(self, value: float) -> None: 3457 self._Entity.FtyLT = value 3458 3459 @FcyLT.setter 3460 def FcyLT(self, value: float) -> None: 3461 self._Entity.FcyLT = value 3462 3463 @Fsu.setter 3464 def Fsu(self, value: float) -> None: 3465 self._Entity.Fsu = value 3466 3467 @Fbru15.setter 3468 def Fbru15(self, value: float) -> None: 3469 self._Entity.Fbru15 = value 3470 3471 @Fbry15.setter 3472 def Fbry15(self, value: float) -> None: 3473 self._Entity.Fbry15 = value 3474 3475 @Fbru20.setter 3476 def Fbru20(self, value: float) -> None: 3477 self._Entity.Fbru20 = value 3478 3479 @Fbry20.setter 3480 def Fbry20(self, value: float) -> None: 3481 self._Entity.Fbry20 = value 3482 3483 @alpha.setter 3484 def alpha(self, value: float) -> None: 3485 self._Entity.alpha = value 3486 3487 @K.setter 3488 def K(self, value: float) -> None: 3489 self._Entity.K = value 3490 3491 @C.setter 3492 def C(self, value: float) -> None: 3493 self._Entity.C = value 3494 3495 @etyL.setter 3496 def etyL(self, value: float) -> None: 3497 self._Entity.etyL = value 3498 3499 @ecyL.setter 3500 def ecyL(self, value: float) -> None: 3501 self._Entity.ecyL = value 3502 3503 @etyLT.setter 3504 def etyLT(self, value: float) -> None: 3505 self._Entity.etyLT = value 3506 3507 @ecyLT.setter 3508 def ecyLT(self, value: float) -> None: 3509 self._Entity.ecyLT = value 3510 3511 @esu.setter 3512 def esu(self, value: float) -> None: 3513 self._Entity.esu = value 3514 3515 @Fpadh.setter 3516 def Fpadh(self, value: float) -> None: 3517 self._Entity.Fpadh = value 3518 3519 @Fsadh.setter 3520 def Fsadh(self, value: float) -> None: 3521 self._Entity.Fsadh = value 3522 3523 @esadh.setter 3524 def esadh(self, value: float) -> None: 3525 self._Entity.esadh = value 3526 3527 @cd.setter 3528 def cd(self, value: float) -> None: 3529 self._Entity.cd = value 3530 3531 @Ffwt.setter 3532 def Ffwt(self, value: float) -> None: 3533 self._Entity.Ffwt = value 3534 3535 @Ffxz.setter 3536 def Ffxz(self, value: float) -> None: 3537 self._Entity.Ffxz = value 3538 3539 @Ffyz.setter 3540 def Ffyz(self, value: float) -> None: 3541 self._Entity.Ffyz = value 3542 3543 @FtFatigue.setter 3544 def FtFatigue(self, value: float) -> None: 3545 self._Entity.FtFatigue = value 3546 3547 @FcFatigue.setter 3548 def FcFatigue(self, value: float) -> None: 3549 self._Entity.FcFatigue = value
Isotropic material temperature dependent properties.
3552class Isotropic: 3553 ''' 3554 Isotropic material. 3555 ''' 3556 def __init__(self, isotropic: _api.Isotropic): 3557 self._Entity = isotropic 3558 3559 @property 3560 def MaterialFamilyName(self) -> str: 3561 return self._Entity.MaterialFamilyName 3562 3563 @property 3564 def Id(self) -> int: 3565 return self._Entity.Id 3566 3567 @property 3568 def CreationDate(self) -> DateTime: 3569 return self._Entity.CreationDate 3570 3571 @property 3572 def ModificationDate(self) -> DateTime: 3573 return self._Entity.ModificationDate 3574 3575 @property 3576 def Name(self) -> str: 3577 return self._Entity.Name 3578 3579 @property 3580 def Form(self) -> str: 3581 return self._Entity.Form 3582 3583 @property 3584 def Specification(self) -> str: 3585 return self._Entity.Specification 3586 3587 @property 3588 def Temper(self) -> str: 3589 return self._Entity.Temper 3590 3591 @property 3592 def Basis(self) -> str: 3593 return self._Entity.Basis 3594 3595 @property 3596 def Density(self) -> float: 3597 return self._Entity.Density 3598 3599 @property 3600 def MaterialDescription(self) -> str: 3601 return self._Entity.MaterialDescription 3602 3603 @property 3604 def UserNote(self) -> str: 3605 return self._Entity.UserNote 3606 3607 @property 3608 def FemMaterialId(self) -> int: 3609 return self._Entity.FemMaterialId 3610 3611 @property 3612 def Cost(self) -> float: 3613 return self._Entity.Cost 3614 3615 @property 3616 def BucklingStiffnessKnockdown(self) -> float: 3617 return self._Entity.BucklingStiffnessKnockdown 3618 3619 @property 3620 def IsotropicTemperatureProperties(self) -> list[IsotropicTemperature]: 3621 return [IsotropicTemperature(isotropicTemperature) for isotropicTemperature in self._Entity.IsotropicTemperatureProperties] 3622 3623 @MaterialFamilyName.setter 3624 def MaterialFamilyName(self, value: str) -> None: 3625 self._Entity.MaterialFamilyName = value 3626 3627 @Name.setter 3628 def Name(self, value: str) -> None: 3629 self._Entity.Name = value 3630 3631 @Form.setter 3632 def Form(self, value: str) -> None: 3633 self._Entity.Form = value 3634 3635 @Specification.setter 3636 def Specification(self, value: str) -> None: 3637 self._Entity.Specification = value 3638 3639 @Temper.setter 3640 def Temper(self, value: str) -> None: 3641 self._Entity.Temper = value 3642 3643 @Basis.setter 3644 def Basis(self, value: str) -> None: 3645 self._Entity.Basis = value 3646 3647 @Density.setter 3648 def Density(self, value: float) -> None: 3649 self._Entity.Density = value 3650 3651 @MaterialDescription.setter 3652 def MaterialDescription(self, value: str) -> None: 3653 self._Entity.MaterialDescription = value 3654 3655 @UserNote.setter 3656 def UserNote(self, value: str) -> None: 3657 self._Entity.UserNote = value 3658 3659 @FemMaterialId.setter 3660 def FemMaterialId(self, value: int) -> None: 3661 self._Entity.FemMaterialId = value 3662 3663 @Cost.setter 3664 def Cost(self, value: float) -> None: 3665 self._Entity.Cost = value 3666 3667 @BucklingStiffnessKnockdown.setter 3668 def BucklingStiffnessKnockdown(self, value: float) -> None: 3669 self._Entity.BucklingStiffnessKnockdown = value 3670 3671 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, g: float, ftuL: float, ftyL: float, fcyL: float, ftuLT: float, ftyLT: float, fcyLT: float, fsu: float, alpha: float, n: float = None, f02: float = None, k: float = None, c: float = None, fbru15: float = None, fbry15: float = None, fbru20: float = None, fbry20: float = None, etyL: float = None, ecyL: float = None, etyLT: float = None, ecyLT: float = None, esu: float = None, fpadh: float = None, fsadh: float = None, esadh: float = None, cd: float = None, ffwt: float = None, ffxz: float = None, ffyz: float = None, ftFatigue: float = None, fcFatigue: float = None) -> IsotropicTemperature: 3672 return IsotropicTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, g, ftuL, ftyL, fcyL, ftuLT, ftyLT, fcyLT, fsu, alpha, n, f02, k, c, fbru15, fbry15, fbru20, fbry20, etyL, ecyL, etyLT, ecyLT, esu, fpadh, fsadh, esadh, cd, ffwt, ffxz, ffyz, ftFatigue, fcFatigue)) 3673 3674 def DeleteTemperatureProperty(self, temperature: float) -> bool: 3675 return self._Entity.DeleteTemperatureProperty(temperature) 3676 3677 def GetTemperature(self, lookupTemperature: float) -> IsotropicTemperature: 3678 return IsotropicTemperature(self._Entity.GetTemperature(lookupTemperature)) 3679 3680 def Save(self) -> None: 3681 ''' 3682 Save any changes to this isotropic material to the database. 3683 ''' 3684 return self._Entity.Save()
Isotropic material.
3671 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, g: float, ftuL: float, ftyL: float, fcyL: float, ftuLT: float, ftyLT: float, fcyLT: float, fsu: float, alpha: float, n: float = None, f02: float = None, k: float = None, c: float = None, fbru15: float = None, fbry15: float = None, fbru20: float = None, fbry20: float = None, etyL: float = None, ecyL: float = None, etyLT: float = None, ecyLT: float = None, esu: float = None, fpadh: float = None, fsadh: float = None, esadh: float = None, cd: float = None, ffwt: float = None, ffxz: float = None, ffyz: float = None, ftFatigue: float = None, fcFatigue: float = None) -> IsotropicTemperature: 3672 return IsotropicTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, g, ftuL, ftyL, fcyL, ftuLT, ftyLT, fcyLT, fsu, alpha, n, f02, k, c, fbru15, fbry15, fbru20, fbry20, etyL, ecyL, etyLT, ecyLT, esu, fpadh, fsadh, esadh, cd, ffwt, ffxz, ffyz, ftFatigue, fcFatigue))
3687class LaminateBase(ABC): 3688 def __init__(self, laminateBase: _api.LaminateBase): 3689 self._Entity = laminateBase 3690 3691 @property 3692 def Id(self) -> int: 3693 return self._Entity.Id 3694 3695 @property 3696 def Name(self) -> str: 3697 return self._Entity.Name 3698 3699 @property 3700 def IsEditable(self) -> bool: 3701 return self._Entity.IsEditable 3702 3703 @property 3704 def MaterialFamilyName(self) -> str: 3705 return self._Entity.MaterialFamilyName 3706 3707 @property 3708 def LayerCount(self) -> int: 3709 return self._Entity.LayerCount 3710 3711 @property 3712 def Density(self) -> float: 3713 return self._Entity.Density 3714 3715 @property 3716 def Thickness(self) -> float: 3717 return self._Entity.Thickness 3718 3719 @property 3720 def LaminateFamilyId(self) -> int: 3721 return self._Entity.LaminateFamilyId 3722 3723 @property 3724 def LaminateFamilyOrder(self) -> int: 3725 return self._Entity.LaminateFamilyOrder 3726 3727 @property 3728 def HyperLaminate(self) -> bool: 3729 return self._Entity.HyperLaminate 3730 3731 @Name.setter 3732 def Name(self, value: str) -> None: 3733 self._Entity.Name = value 3734 3735 @MaterialFamilyName.setter 3736 def MaterialFamilyName(self, value: str) -> None: 3737 self._Entity.MaterialFamilyName = value 3738 3739 @abstractmethod 3740 def Save(self) -> None: 3741 ''' 3742 Save the laminate. 3743 ''' 3744 return self._Entity.Save()
3747class LaminateFamily(IdNameEntity): 3748 def __init__(self, laminateFamily: _api.LaminateFamily): 3749 self._Entity = laminateFamily 3750 3751 @property 3752 def Laminates(self) -> list[LaminateBase]: 3753 return [LaminateBase(laminateBase) for laminateBase in self._Entity.Laminates] 3754 3755 @property 3756 def ModificationDate(self) -> DateTime: 3757 return self._Entity.ModificationDate 3758 3759 @property 3760 def PlankSetting(self) -> types.LaminateFamilySettingType: 3761 return types.LaminateFamilySettingType[self._Entity.PlankSetting.ToString()] 3762 3763 @property 3764 def PlankMinRatio(self) -> float: 3765 return self._Entity.PlankMinRatio 3766 3767 @property 3768 def PlankMaxRatio(self) -> float: 3769 return self._Entity.PlankMaxRatio 3770 3771 @property 3772 def FootChargeSetting(self) -> types.LaminateFamilySettingType: 3773 return types.LaminateFamilySettingType[self._Entity.FootChargeSetting.ToString()] 3774 3775 @property 3776 def FootChargeMinRatio(self) -> float: 3777 return self._Entity.FootChargeMinRatio 3778 3779 @property 3780 def FootChargeMaxRatio(self) -> float: 3781 return self._Entity.FootChargeMaxRatio 3782 3783 @property 3784 def WebChargeSetting(self) -> types.LaminateFamilySettingType: 3785 return types.LaminateFamilySettingType[self._Entity.WebChargeSetting.ToString()] 3786 3787 @property 3788 def WebChargeMinRatio(self) -> float: 3789 return self._Entity.WebChargeMinRatio 3790 3791 @property 3792 def WebChargeMaxRatio(self) -> float: 3793 return self._Entity.WebChargeMaxRatio 3794 3795 @property 3796 def CapChargeSetting(self) -> types.LaminateFamilySettingType: 3797 return types.LaminateFamilySettingType[self._Entity.CapChargeSetting.ToString()] 3798 3799 @property 3800 def CapChargeMinRatio(self) -> float: 3801 return self._Entity.CapChargeMinRatio 3802 3803 @property 3804 def CapChargeMaxRatio(self) -> float: 3805 return self._Entity.CapChargeMaxRatio 3806 3807 @property 3808 def CapCoverSetting(self) -> types.LaminateFamilySettingType: 3809 return types.LaminateFamilySettingType[self._Entity.CapCoverSetting.ToString()] 3810 3811 @property 3812 def CapCoverMinRatio(self) -> float: 3813 return self._Entity.CapCoverMinRatio 3814 3815 @property 3816 def CapCoverMaxRatio(self) -> float: 3817 return self._Entity.CapCoverMaxRatio 3818 3819 @property 3820 def DropPattern(self) -> types.PlyDropPattern: 3821 return types.PlyDropPattern[self._Entity.DropPattern.ToString()] 3822 3823 @property 3824 def LaminateStiffenerProfile(self) -> types.StiffenerProfile: 3825 return types.StiffenerProfile[self._Entity.LaminateStiffenerProfile.ToString()]
Represents an entity with an ID and Name.
Inherited Members
3828class LaminateLayerBase(ABC): 3829 def __init__(self, laminateLayerBase: _api.LaminateLayerBase): 3830 self._Entity = laminateLayerBase 3831 3832 @property 3833 def LayerId(self) -> int: 3834 return self._Entity.LayerId 3835 3836 @property 3837 def LayerMaterial(self) -> str: 3838 return self._Entity.LayerMaterial 3839 3840 @property 3841 def LayerMaterialType(self) -> types.MaterialType: 3842 ''' 3843 Represents a material's type. 3844 ''' 3845 return types.MaterialType[self._Entity.LayerMaterialType.ToString()] 3846 3847 @property 3848 def Angle(self) -> float: 3849 return self._Entity.Angle 3850 3851 @property 3852 def Thickness(self) -> float: 3853 return self._Entity.Thickness 3854 3855 @property 3856 def IsFabric(self) -> bool: 3857 return self._Entity.IsFabric 3858 3859 @Angle.setter 3860 @abstractmethod 3861 def Angle(self, value: float) -> None: 3862 self._Entity.Angle = value 3863 3864 def SetThickness(self, thickness: float) -> None: 3865 return self._Entity.SetThickness(thickness) 3866 3867 @overload 3868 def SetMaterial(self, matId: int) -> bool: ... 3869 3870 @overload 3871 def SetMaterial(self, matName: str) -> bool: ... 3872 3873 def SetMaterial(self, item1 = None) -> bool: 3874 if isinstance(item1, int): 3875 return self._Entity.SetMaterial(item1) 3876 3877 if isinstance(item1, str): 3878 return self._Entity.SetMaterial(item1) 3879 3880 return self._Entity.SetMaterial(item1)
3840 @property 3841 def LayerMaterialType(self) -> types.MaterialType: 3842 ''' 3843 Represents a material's type. 3844 ''' 3845 return types.MaterialType[self._Entity.LayerMaterialType.ToString()]
Represents a material's type.
3883class LaminateLayer(LaminateLayerBase): 3884 ''' 3885 Layer in a non-stiffener laminate. 3886 ''' 3887 def __init__(self, laminateLayer: _api.LaminateLayer): 3888 self._Entity = laminateLayer 3889 3890 @property 3891 def LayerId(self) -> int: 3892 return self._Entity.LayerId 3893 3894 @property 3895 def LayerMaterialType(self) -> types.MaterialType: 3896 ''' 3897 Represents a material's type. 3898 ''' 3899 return types.MaterialType[self._Entity.LayerMaterialType.ToString()] 3900 3901 @property 3902 def Angle(self) -> float: 3903 return self._Entity.Angle 3904 3905 @property 3906 def Thickness(self) -> float: 3907 return self._Entity.Thickness 3908 3909 @property 3910 def IsFabric(self) -> bool: 3911 return self._Entity.IsFabric 3912 3913 @Angle.setter 3914 def Angle(self, value: float) -> None: 3915 self._Entity.Angle = value 3916 3917 @overload 3918 def SetMaterial(self, matId: int) -> bool: ... 3919 3920 @overload 3921 def SetMaterial(self, matName: str) -> bool: ... 3922 3923 def SetMaterial(self, item1 = None) -> bool: 3924 if isinstance(item1, int): 3925 return bool(super().SetMaterial(item1)) 3926 3927 if isinstance(item1, str): 3928 return bool(super().SetMaterial(item1)) 3929 3930 return self._Entity.SetMaterial(item1)
Layer in a non-stiffener laminate.
3894 @property 3895 def LayerMaterialType(self) -> types.MaterialType: 3896 ''' 3897 Represents a material's type. 3898 ''' 3899 return types.MaterialType[self._Entity.LayerMaterialType.ToString()]
Represents a material's type.
Inherited Members
3933class Laminate(LaminateBase): 3934 ''' 3935 Laminate 3936 ''' 3937 def __init__(self, laminate: _api.Laminate): 3938 self._Entity = laminate 3939 3940 @property 3941 def Layers(self) -> list[LaminateLayer]: 3942 return [LaminateLayer(laminateLayer) for laminateLayer in self._Entity.Layers] 3943 3944 def AddLayer(self, materialName: str, angle: float, thickness: float = None) -> LaminateLayer: 3945 return LaminateLayer(self._Entity.AddLayer(materialName, angle, thickness)) 3946 3947 def InsertLayer(self, layerId: int, materialName: str, angle: float, thickness: float = None) -> LaminateLayer: 3948 return LaminateLayer(self._Entity.InsertLayer(layerId, materialName, angle, thickness)) 3949 3950 def RemoveLayer(self, layerId: int) -> bool: 3951 return self._Entity.RemoveLayer(layerId) 3952 3953 def Save(self) -> None: 3954 ''' 3955 Save any changes to this laminate material to the database. 3956 ''' 3957 return self._Entity.Save()
Laminate
3960class StiffenerLaminateLayer(LaminateLayerBase): 3961 ''' 3962 Stiffener Laminate Layer 3963 ''' 3964 def __init__(self, stiffenerLaminateLayer: _api.StiffenerLaminateLayer): 3965 self._Entity = stiffenerLaminateLayer 3966 3967 @property 3968 def LayerLocations(self) -> list[types.StiffenerLaminateLayerLocation]: 3969 return [types.StiffenerLaminateLayerLocation[stiffenerLaminateLayerLocation.ToString()] for stiffenerLaminateLayerLocation in self._Entity.LayerLocations] 3970 3971 @property 3972 def LayerId(self) -> int: 3973 return self._Entity.LayerId 3974 3975 @property 3976 def LayerMaterialType(self) -> types.MaterialType: 3977 ''' 3978 Represents a material's type. 3979 ''' 3980 return types.MaterialType[self._Entity.LayerMaterialType.ToString()] 3981 3982 @property 3983 def Angle(self) -> float: 3984 return self._Entity.Angle 3985 3986 @property 3987 def Thickness(self) -> float: 3988 return self._Entity.Thickness 3989 3990 @property 3991 def IsFabric(self) -> bool: 3992 return self._Entity.IsFabric 3993 3994 @Angle.setter 3995 def Angle(self, value: float) -> None: 3996 self._Entity.Angle = value 3997 3998 def AddLayerLocation(self, location: types.StiffenerLaminateLayerLocation) -> None: 3999 return self._Entity.AddLayerLocation(_types.StiffenerLaminateLayerLocation(location.value)) 4000 4001 def RemoveLayerLocation(self, location: types.StiffenerLaminateLayerLocation) -> bool: 4002 return self._Entity.RemoveLayerLocation(_types.StiffenerLaminateLayerLocation(location.value)) 4003 4004 @overload 4005 def SetMaterial(self, matId: int) -> bool: ... 4006 4007 @overload 4008 def SetMaterial(self, matName: str) -> bool: ... 4009 4010 def SetMaterial(self, item1 = None) -> bool: 4011 if isinstance(item1, int): 4012 return bool(super().SetMaterial(item1)) 4013 4014 if isinstance(item1, str): 4015 return bool(super().SetMaterial(item1)) 4016 4017 return self._Entity.SetMaterial(item1)
Stiffener Laminate Layer
3975 @property 3976 def LayerMaterialType(self) -> types.MaterialType: 3977 ''' 3978 Represents a material's type. 3979 ''' 3980 return types.MaterialType[self._Entity.LayerMaterialType.ToString()]
Represents a material's type.
Inherited Members
4020class StiffenerLaminate(LaminateBase): 4021 ''' 4022 Stiffener Laminate 4023 ''' 4024 def __init__(self, stiffenerLaminate: _api.StiffenerLaminate): 4025 self._Entity = stiffenerLaminate 4026 4027 @property 4028 def Layers(self) -> list[StiffenerLaminateLayer]: 4029 return [StiffenerLaminateLayer(stiffenerLaminateLayer) for stiffenerLaminateLayer in self._Entity.Layers] 4030 4031 @property 4032 def LaminateStiffenerProfile(self) -> types.StiffenerProfile: 4033 return types.StiffenerProfile[self._Entity.LaminateStiffenerProfile.ToString()] 4034 4035 @overload 4036 def AddLayer(self, location: types.StiffenerLaminateLayerLocation, materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4037 4038 @overload 4039 def InsertLayer(self, location: types.StiffenerLaminateLayerLocation, layerId: int, materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4040 4041 @overload 4042 def AddLayer(self, locations: tuple[types.StiffenerLaminateLayerLocation], materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4043 4044 @overload 4045 def InsertLayer(self, locations: tuple[types.StiffenerLaminateLayerLocation], layerId: int, materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4046 4047 def RemoveLayer(self, layerId: int) -> bool: 4048 return self._Entity.RemoveLayer(layerId) 4049 4050 def Save(self) -> None: 4051 ''' 4052 Save laminate to database. 4053 ''' 4054 return self._Entity.Save() 4055 4056 def AddLayer(self, item1 = None, item2 = None, item3 = None, item4 = None) -> StiffenerLaminateLayer: 4057 if isinstance(item1, types.StiffenerLaminateLayerLocation) and isinstance(item2, str) and isinstance(item3, float) and isinstance(item4, float): 4058 return StiffenerLaminateLayer(self._Entity.AddLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4)) 4059 4060 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], types.StiffenerLaminateLayerLocation) and isinstance(item2, str) and isinstance(item3, float) and isinstance(item4, float): 4061 locationsList = List[_types.StiffenerLaminateLayerLocation]() 4062 if item1 is not None: 4063 for thing in item1: 4064 if thing is not None: 4065 locationsList.Add(_types.StiffenerLaminateLayerLocation(thing.value)) 4066 locationsEnumerable = IEnumerable(locationsList) 4067 return StiffenerLaminateLayer(self._Entity.AddLayer(locationsEnumerable, item2, item3, item4)) 4068 4069 return self._Entity.AddLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4) 4070 4071 def InsertLayer(self, item1 = None, item2 = None, item3 = None, item4 = None, item5 = None) -> StiffenerLaminateLayer: 4072 if isinstance(item1, types.StiffenerLaminateLayerLocation) and isinstance(item2, int) and isinstance(item3, str) and isinstance(item4, float) and isinstance(item5, float): 4073 return StiffenerLaminateLayer(self._Entity.InsertLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4, item5)) 4074 4075 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], types.StiffenerLaminateLayerLocation) and isinstance(item2, int) and isinstance(item3, str) and isinstance(item4, float) and isinstance(item5, float): 4076 locationsList = List[_types.StiffenerLaminateLayerLocation]() 4077 if item1 is not None: 4078 for thing in item1: 4079 if thing is not None: 4080 locationsList.Add(_types.StiffenerLaminateLayerLocation(thing.value)) 4081 locationsEnumerable = IEnumerable(locationsList) 4082 return StiffenerLaminateLayer(self._Entity.InsertLayer(locationsEnumerable, item2, item3, item4, item5)) 4083 4084 return self._Entity.InsertLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4, item5)
Stiffener Laminate
4056 def AddLayer(self, item1 = None, item2 = None, item3 = None, item4 = None) -> StiffenerLaminateLayer: 4057 if isinstance(item1, types.StiffenerLaminateLayerLocation) and isinstance(item2, str) and isinstance(item3, float) and isinstance(item4, float): 4058 return StiffenerLaminateLayer(self._Entity.AddLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4)) 4059 4060 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], types.StiffenerLaminateLayerLocation) and isinstance(item2, str) and isinstance(item3, float) and isinstance(item4, float): 4061 locationsList = List[_types.StiffenerLaminateLayerLocation]() 4062 if item1 is not None: 4063 for thing in item1: 4064 if thing is not None: 4065 locationsList.Add(_types.StiffenerLaminateLayerLocation(thing.value)) 4066 locationsEnumerable = IEnumerable(locationsList) 4067 return StiffenerLaminateLayer(self._Entity.AddLayer(locationsEnumerable, item2, item3, item4)) 4068 4069 return self._Entity.AddLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4)
4071 def InsertLayer(self, item1 = None, item2 = None, item3 = None, item4 = None, item5 = None) -> StiffenerLaminateLayer: 4072 if isinstance(item1, types.StiffenerLaminateLayerLocation) and isinstance(item2, int) and isinstance(item3, str) and isinstance(item4, float) and isinstance(item5, float): 4073 return StiffenerLaminateLayer(self._Entity.InsertLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4, item5)) 4074 4075 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], types.StiffenerLaminateLayerLocation) and isinstance(item2, int) and isinstance(item3, str) and isinstance(item4, float) and isinstance(item5, float): 4076 locationsList = List[_types.StiffenerLaminateLayerLocation]() 4077 if item1 is not None: 4078 for thing in item1: 4079 if thing is not None: 4080 locationsList.Add(_types.StiffenerLaminateLayerLocation(thing.value)) 4081 locationsEnumerable = IEnumerable(locationsList) 4082 return StiffenerLaminateLayer(self._Entity.InsertLayer(locationsEnumerable, item2, item3, item4, item5)) 4083 4084 return self._Entity.InsertLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4, item5)
4087class OrthotropicCorrectionFactorBase(ABC): 4088 ''' 4089 Orthotropic material correction factor. 4090 ''' 4091 def __init__(self, orthotropicCorrectionFactorBase: _api.OrthotropicCorrectionFactorBase): 4092 self._Entity = orthotropicCorrectionFactorBase 4093 4094 @property 4095 def CorrectionId(self) -> types.CorrectionId: 4096 ''' 4097 Correction ID for a correction factor. (Columns in HyperX) 4098 ''' 4099 return types.CorrectionId[self._Entity.CorrectionId.ToString()] 4100 4101 @property 4102 def PropertyId(self) -> types.CorrectionProperty: 4103 ''' 4104 Property name for a correction factor. (Rows in HyperX) 4105 ''' 4106 return types.CorrectionProperty[self._Entity.PropertyId.ToString()]
Orthotropic material correction factor.
4094 @property 4095 def CorrectionId(self) -> types.CorrectionId: 4096 ''' 4097 Correction ID for a correction factor. (Columns in HyperX) 4098 ''' 4099 return types.CorrectionId[self._Entity.CorrectionId.ToString()]
Correction ID for a correction factor. (Columns in HyperX)
4101 @property 4102 def PropertyId(self) -> types.CorrectionProperty: 4103 ''' 4104 Property name for a correction factor. (Rows in HyperX) 4105 ''' 4106 return types.CorrectionProperty[self._Entity.PropertyId.ToString()]
Property name for a correction factor. (Rows in HyperX)
4109class OrthotropicCorrectionFactorPoint: 4110 ''' 4111 Pointer to an Equation-based or Tabular Correction Factor. 4112 ''' 4113 def __init__(self, orthotropicCorrectionFactorPoint: _api.OrthotropicCorrectionFactorPoint): 4114 self._Entity = orthotropicCorrectionFactorPoint 4115 4116 def Create_OrthotropicCorrectionFactorPoint(property: types.CorrectionProperty, id: types.CorrectionId): 4117 return OrthotropicCorrectionFactorPoint(_api.OrthotropicCorrectionFactorPoint(_types.CorrectionProperty(property.value), _types.CorrectionId(id.value))) 4118 4119 @property 4120 def CorrectionProperty(self) -> types.CorrectionProperty: 4121 ''' 4122 Property name for a correction factor. (Rows in HyperX) 4123 ''' 4124 return types.CorrectionProperty[self._Entity.CorrectionProperty.ToString()] 4125 4126 @property 4127 def CorrectionId(self) -> types.CorrectionId: 4128 ''' 4129 Correction ID for a correction factor. (Columns in HyperX) 4130 ''' 4131 return types.CorrectionId[self._Entity.CorrectionId.ToString()] 4132 4133 @overload 4134 def Equals(self, other) -> bool: ... 4135 4136 @overload 4137 def Equals(self, obj) -> bool: ... 4138 4139 def GetHashCode(self) -> int: 4140 return self._Entity.GetHashCode() 4141 4142 def Equals(self, item1 = None) -> bool: 4143 if isinstance(item1, OrthotropicCorrectionFactorPoint): 4144 return self._Entity.Equals(item1._Entity) 4145 4146 return self._Entity.Equals(item1._Entity)
Pointer to an Equation-based or Tabular Correction Factor.
4119 @property 4120 def CorrectionProperty(self) -> types.CorrectionProperty: 4121 ''' 4122 Property name for a correction factor. (Rows in HyperX) 4123 ''' 4124 return types.CorrectionProperty[self._Entity.CorrectionProperty.ToString()]
Property name for a correction factor. (Rows in HyperX)
4126 @property 4127 def CorrectionId(self) -> types.CorrectionId: 4128 ''' 4129 Correction ID for a correction factor. (Columns in HyperX) 4130 ''' 4131 return types.CorrectionId[self._Entity.CorrectionId.ToString()]
Correction ID for a correction factor. (Columns in HyperX)
4149class OrthotropicCorrectionFactorValue: 4150 ''' 4151 Orthotropic material equation-based correction factor value. (NOT TABULAR) 4152 ''' 4153 def __init__(self, orthotropicCorrectionFactorValue: _api.OrthotropicCorrectionFactorValue): 4154 self._Entity = orthotropicCorrectionFactorValue 4155 4156 @property 4157 def Property(self) -> types.CorrectionProperty: 4158 ''' 4159 Property name for a correction factor. (Rows in HyperX) 4160 ''' 4161 return types.CorrectionProperty[self._Entity.Property.ToString()] 4162 4163 @property 4164 def Correction(self) -> types.CorrectionId: 4165 ''' 4166 Correction ID for a correction factor. (Columns in HyperX) 4167 ''' 4168 return types.CorrectionId[self._Entity.Correction.ToString()] 4169 4170 @property 4171 def Equation(self) -> types.CorrectionEquation: 4172 ''' 4173 Equation for a correction factor. 4174 ''' 4175 return types.CorrectionEquation[self._Entity.Equation.ToString()] 4176 4177 @property 4178 def EquationParameter(self) -> types.EquationParameterId: 4179 ''' 4180 Correction factor parameter names. 4181 ''' 4182 return types.EquationParameterId[self._Entity.EquationParameter.ToString()] 4183 4184 @property 4185 def Value(self) -> float: 4186 return self._Entity.Value 4187 4188 @Value.setter 4189 def Value(self, value: float) -> None: 4190 self._Entity.Value = value
Orthotropic material equation-based correction factor value. (NOT TABULAR)
4156 @property 4157 def Property(self) -> types.CorrectionProperty: 4158 ''' 4159 Property name for a correction factor. (Rows in HyperX) 4160 ''' 4161 return types.CorrectionProperty[self._Entity.Property.ToString()]
Property name for a correction factor. (Rows in HyperX)
4163 @property 4164 def Correction(self) -> types.CorrectionId: 4165 ''' 4166 Correction ID for a correction factor. (Columns in HyperX) 4167 ''' 4168 return types.CorrectionId[self._Entity.Correction.ToString()]
Correction ID for a correction factor. (Columns in HyperX)
4170 @property 4171 def Equation(self) -> types.CorrectionEquation: 4172 ''' 4173 Equation for a correction factor. 4174 ''' 4175 return types.CorrectionEquation[self._Entity.Equation.ToString()]
Equation for a correction factor.
4177 @property 4178 def EquationParameter(self) -> types.EquationParameterId: 4179 ''' 4180 Correction factor parameter names. 4181 ''' 4182 return types.EquationParameterId[self._Entity.EquationParameter.ToString()]
Correction factor parameter names.
4193class OrthotropicEquationCorrectionFactor(OrthotropicCorrectionFactorBase): 4194 ''' 4195 Represents an equation-based orthotropic material correction factor. 4196 ''' 4197 def __init__(self, orthotropicEquationCorrectionFactor: _api.OrthotropicEquationCorrectionFactor): 4198 self._Entity = orthotropicEquationCorrectionFactor 4199 4200 @property 4201 def Equation(self) -> types.CorrectionEquation: 4202 ''' 4203 Equation for a correction factor. 4204 ''' 4205 return types.CorrectionEquation[self._Entity.Equation.ToString()] 4206 4207 @property 4208 def OrthotropicCorrectionValues(self) -> dict[types.EquationParameterId, OrthotropicCorrectionFactorValue]: 4209 orthotropicCorrectionValuesDict = {} 4210 for kvp in self._Entity.OrthotropicCorrectionValues: 4211 orthotropicCorrectionValuesDict[types.EquationParameterId[kvp.Key.ToString()]] = OrthotropicCorrectionFactorValue(kvp.Value) 4212 4213 return orthotropicCorrectionValuesDict 4214 4215 def AddCorrectionFactorValue(self, equationParameterName: types.EquationParameterId, valueToAdd: float) -> OrthotropicCorrectionFactorValue: 4216 return OrthotropicCorrectionFactorValue(self._Entity.AddCorrectionFactorValue(_types.EquationParameterId(equationParameterName.value), valueToAdd))
Represents an equation-based orthotropic material correction factor.
4200 @property 4201 def Equation(self) -> types.CorrectionEquation: 4202 ''' 4203 Equation for a correction factor. 4204 ''' 4205 return types.CorrectionEquation[self._Entity.Equation.ToString()]
Equation for a correction factor.
4207 @property 4208 def OrthotropicCorrectionValues(self) -> dict[types.EquationParameterId, OrthotropicCorrectionFactorValue]: 4209 orthotropicCorrectionValuesDict = {} 4210 for kvp in self._Entity.OrthotropicCorrectionValues: 4211 orthotropicCorrectionValuesDict[types.EquationParameterId[kvp.Key.ToString()]] = OrthotropicCorrectionFactorValue(kvp.Value) 4212 4213 return orthotropicCorrectionValuesDict
Inherited Members
4219class TabularCorrectionFactorIndependentValue: 4220 ''' 4221 Contains an independent value for a tabular correction factor row. 4222 ''' 4223 def __init__(self, tabularCorrectionFactorIndependentValue: _api.TabularCorrectionFactorIndependentValue): 4224 self._Entity = tabularCorrectionFactorIndependentValue 4225 4226 @property 4227 def BoolValue(self) -> bool: 4228 return self._Entity.BoolValue 4229 4230 @property 4231 def DoubleValue(self) -> float: 4232 return self._Entity.DoubleValue 4233 4234 @property 4235 def IntValue(self) -> int: 4236 return self._Entity.IntValue 4237 4238 @property 4239 def ValueType(self) -> types.CorrectionValueType: 4240 ''' 4241 Defines the type of the independent values on a tabular correction factor row. 4242 ''' 4243 return types.CorrectionValueType[self._Entity.ValueType.ToString()]
Contains an independent value for a tabular correction factor row.
4238 @property 4239 def ValueType(self) -> types.CorrectionValueType: 4240 ''' 4241 Defines the type of the independent values on a tabular correction factor row. 4242 ''' 4243 return types.CorrectionValueType[self._Entity.ValueType.ToString()]
Defines the type of the independent values on a tabular correction factor row.
4246class TabularCorrectionFactorRow: 4247 ''' 4248 Row data for a tabular correction factor. 4249 ''' 4250 def __init__(self, tabularCorrectionFactorRow: _api.TabularCorrectionFactorRow): 4251 self._Entity = tabularCorrectionFactorRow 4252 4253 @property 4254 def DependentValue(self) -> float: 4255 return self._Entity.DependentValue 4256 4257 @property 4258 def IndependentValues(self) -> dict[types.CorrectionIndependentDefinition, TabularCorrectionFactorIndependentValue]: 4259 independentValuesDict = {} 4260 for kvp in self._Entity.IndependentValues: 4261 independentValuesDict[types.CorrectionIndependentDefinition[kvp.Key.ToString()]] = TabularCorrectionFactorIndependentValue(kvp.Value) 4262 4263 return independentValuesDict
Row data for a tabular correction factor.
4257 @property 4258 def IndependentValues(self) -> dict[types.CorrectionIndependentDefinition, TabularCorrectionFactorIndependentValue]: 4259 independentValuesDict = {} 4260 for kvp in self._Entity.IndependentValues: 4261 independentValuesDict[types.CorrectionIndependentDefinition[kvp.Key.ToString()]] = TabularCorrectionFactorIndependentValue(kvp.Value) 4262 4263 return independentValuesDict
4266class OrthotropicTabularCorrectionFactor(OrthotropicCorrectionFactorBase): 4267 ''' 4268 Tabular correction factor. 4269 ''' 4270 def __init__(self, orthotropicTabularCorrectionFactor: _api.OrthotropicTabularCorrectionFactor): 4271 self._Entity = orthotropicTabularCorrectionFactor 4272 4273 @property 4274 def CorrectionFactorRows(self) -> dict[int, TabularCorrectionFactorRow]: 4275 correctionFactorRowsDict = {} 4276 for kvp in self._Entity.CorrectionFactorRows: 4277 correctionFactorRowsDict[int(kvp.Key)] = TabularCorrectionFactorRow(kvp.Value) 4278 4279 return correctionFactorRowsDict 4280 4281 @property 4282 def CorrectionIndependentDefinitions(self) -> set[types.CorrectionIndependentDefinition]: 4283 return {types.CorrectionIndependentDefinition(correctionIndependentDefinition) for correctionIndependentDefinition in self._Entity.CorrectionIndependentDefinitions} 4284 4285 @overload 4286 def SetIndependentValue(self, correctionPointId: int, cid: types.CorrectionIndependentDefinition, value: float) -> None: ... 4287 4288 @overload 4289 def SetIndependentValue(self, correctionPointId: int, cid: types.CorrectionIndependentDefinition, value: bool) -> None: ... 4290 4291 @overload 4292 def SetIndependentValue(self, correctionPointId: int, cid: types.CorrectionIndependentDefinition, value: int) -> None: ... 4293 4294 def SetKValue(self, correctionPointId: int, value: float) -> None: 4295 return self._Entity.SetKValue(correctionPointId, value) 4296 4297 def SetIndependentValue(self, item1 = None, item2 = None, item3 = None) -> None: 4298 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, float): 4299 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4300 4301 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, bool): 4302 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4303 4304 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, int): 4305 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4306 4307 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3)
Tabular correction factor.
4273 @property 4274 def CorrectionFactorRows(self) -> dict[int, TabularCorrectionFactorRow]: 4275 correctionFactorRowsDict = {} 4276 for kvp in self._Entity.CorrectionFactorRows: 4277 correctionFactorRowsDict[int(kvp.Key)] = TabularCorrectionFactorRow(kvp.Value) 4278 4279 return correctionFactorRowsDict
4297 def SetIndependentValue(self, item1 = None, item2 = None, item3 = None) -> None: 4298 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, float): 4299 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4300 4301 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, bool): 4302 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4303 4304 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, int): 4305 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4306 4307 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3)
Inherited Members
4310class OrthotropicAllowableCurvePoint: 4311 ''' 4312 Represents a point on a laminate allowable curve. 4313 ''' 4314 def __init__(self, orthotropicAllowableCurvePoint: _api.OrthotropicAllowableCurvePoint): 4315 self._Entity = orthotropicAllowableCurvePoint 4316 4317 @property 4318 def Property_ID(self) -> types.AllowablePropertyName: 4319 ''' 4320 Property name for a laminate allowable. 4321 ''' 4322 return types.AllowablePropertyName[self._Entity.Property_ID.ToString()] 4323 4324 @property 4325 def Temperature(self) -> float: 4326 return self._Entity.Temperature 4327 4328 @property 4329 def X(self) -> float: 4330 return self._Entity.X 4331 4332 @property 4333 def Y(self) -> float: 4334 return self._Entity.Y 4335 4336 @Property_ID.setter 4337 def Property_ID(self, value: types.AllowablePropertyName) -> None: 4338 self._Entity.Property_ID = _types.AllowablePropertyName(value.value) 4339 4340 @Temperature.setter 4341 def Temperature(self, value: float) -> None: 4342 self._Entity.Temperature = value 4343 4344 @X.setter 4345 def X(self, value: float) -> None: 4346 self._Entity.X = value 4347 4348 @Y.setter 4349 def Y(self, value: float) -> None: 4350 self._Entity.Y = value
Represents a point on a laminate allowable curve.
4317 @property 4318 def Property_ID(self) -> types.AllowablePropertyName: 4319 ''' 4320 Property name for a laminate allowable. 4321 ''' 4322 return types.AllowablePropertyName[self._Entity.Property_ID.ToString()]
Property name for a laminate allowable.
4353class OrthotropicEffectiveLaminate: 4354 ''' 4355 Orthotropic material effective laminate properties. Read-only from the API. 4356 Check if material is an effective laminate with orthotropic.IsEffectiveLaminate. 4357 ''' 4358 def __init__(self, orthotropicEffectiveLaminate: _api.OrthotropicEffectiveLaminate): 4359 self._Entity = orthotropicEffectiveLaminate 4360 4361 @property 4362 def Percent_tape_0(self) -> float: 4363 return self._Entity.Percent_tape_0 4364 4365 @property 4366 def Percent_tape_90(self) -> float: 4367 return self._Entity.Percent_tape_90 4368 4369 @property 4370 def Percent_tape_45(self) -> float: 4371 return self._Entity.Percent_tape_45 4372 4373 @property 4374 def Percent_fabric_0(self) -> float: 4375 return self._Entity.Percent_fabric_0 4376 4377 @property 4378 def Percent_fabric_90(self) -> float: 4379 return self._Entity.Percent_fabric_90 4380 4381 @property 4382 def Percent_fabric_45(self) -> float: 4383 return self._Entity.Percent_fabric_45 4384 4385 @property 4386 def Tape_Orthotropic(self) -> str: 4387 return self._Entity.Tape_Orthotropic 4388 4389 @property 4390 def Fabric_Orthotropic(self) -> str: 4391 return self._Entity.Fabric_Orthotropic 4392 4393 @property 4394 def Valid(self) -> bool: 4395 return self._Entity.Valid 4396 4397 @property 4398 def Use_tape_allowables(self) -> bool: 4399 return self._Entity.Use_tape_allowables
Orthotropic material effective laminate properties. Read-only from the API. Check if material is an effective laminate with orthotropic.IsEffectiveLaminate.
4402class OrthotropicLaminateAllowable: 4403 ''' 4404 Orthotropic material laminate allowable properties. 4405 ''' 4406 def __init__(self, orthotropicLaminateAllowable: _api.OrthotropicLaminateAllowable): 4407 self._Entity = orthotropicLaminateAllowable 4408 4409 @property 4410 def Property_ID(self) -> types.AllowablePropertyName: 4411 ''' 4412 Property name for a laminate allowable. 4413 ''' 4414 return types.AllowablePropertyName[self._Entity.Property_ID.ToString()] 4415 4416 @property 4417 def Method_ID(self) -> types.AllowableMethodName: 4418 ''' 4419 Method name for a laminate allowable. 4420 ''' 4421 return types.AllowableMethodName[self._Entity.Method_ID.ToString()] 4422 4423 @Property_ID.setter 4424 def Property_ID(self, value: types.AllowablePropertyName) -> None: 4425 self._Entity.Property_ID = _types.AllowablePropertyName(value.value) 4426 4427 @Method_ID.setter 4428 def Method_ID(self, value: types.AllowableMethodName) -> None: 4429 self._Entity.Method_ID = _types.AllowableMethodName(value.value)
Orthotropic material laminate allowable properties.
4409 @property 4410 def Property_ID(self) -> types.AllowablePropertyName: 4411 ''' 4412 Property name for a laminate allowable. 4413 ''' 4414 return types.AllowablePropertyName[self._Entity.Property_ID.ToString()]
Property name for a laminate allowable.
4432class OrthotropicTemperature: 4433 ''' 4434 Orthotropic material temperature dependent properties. 4435 ''' 4436 def __init__(self, orthotropicTemperature: _api.OrthotropicTemperature): 4437 self._Entity = orthotropicTemperature 4438 4439 @property 4440 def Temperature(self) -> float: 4441 return self._Entity.Temperature 4442 4443 @property 4444 def Et1(self) -> float: 4445 return self._Entity.Et1 4446 4447 @property 4448 def Et2(self) -> float: 4449 return self._Entity.Et2 4450 4451 @property 4452 def vt12(self) -> float: 4453 return self._Entity.vt12 4454 4455 @property 4456 def Ec1(self) -> float: 4457 return self._Entity.Ec1 4458 4459 @property 4460 def Ec2(self) -> float: 4461 return self._Entity.Ec2 4462 4463 @property 4464 def vc12(self) -> float: 4465 return self._Entity.vc12 4466 4467 @property 4468 def G12(self) -> float: 4469 return self._Entity.G12 4470 4471 @property 4472 def G13(self) -> float: 4473 return self._Entity.G13 4474 4475 @property 4476 def G23(self) -> float: 4477 return self._Entity.G23 4478 4479 @property 4480 def Ftu1(self) -> float: 4481 return self._Entity.Ftu1 4482 4483 @property 4484 def Ftu2(self) -> float: 4485 return self._Entity.Ftu2 4486 4487 @property 4488 def Fcu1(self) -> float: 4489 return self._Entity.Fcu1 4490 4491 @property 4492 def Fcu2(self) -> float: 4493 return self._Entity.Fcu2 4494 4495 @property 4496 def Fsu12(self) -> float: 4497 return self._Entity.Fsu12 4498 4499 @property 4500 def Fsu13(self) -> float: 4501 return self._Entity.Fsu13 4502 4503 @property 4504 def Fsu23(self) -> float: 4505 return self._Entity.Fsu23 4506 4507 @property 4508 def GIc(self) -> float: 4509 return self._Entity.GIc 4510 4511 @property 4512 def alpha1(self) -> float: 4513 return self._Entity.alpha1 4514 4515 @property 4516 def alpha2(self) -> float: 4517 return self._Entity.alpha2 4518 4519 @property 4520 def K1(self) -> float: 4521 return self._Entity.K1 4522 4523 @property 4524 def K2(self) -> float: 4525 return self._Entity.K2 4526 4527 @property 4528 def C(self) -> float: 4529 return self._Entity.C 4530 4531 @property 4532 def etu1(self) -> float: 4533 return self._Entity.etu1 4534 4535 @property 4536 def etu2(self) -> float: 4537 return self._Entity.etu2 4538 4539 @property 4540 def ecu1(self) -> float: 4541 return self._Entity.ecu1 4542 4543 @property 4544 def ecu2(self) -> float: 4545 return self._Entity.ecu2 4546 4547 @property 4548 def ecuoh(self) -> float: 4549 return self._Entity.ecuoh 4550 4551 @property 4552 def ecuai(self) -> float: 4553 return self._Entity.ecuai 4554 4555 @property 4556 def esu12(self) -> float: 4557 return self._Entity.esu12 4558 4559 @property 4560 def Ftu3(self) -> float: 4561 return self._Entity.Ftu3 4562 4563 @property 4564 def GIIc(self) -> float: 4565 return self._Entity.GIIc 4566 4567 @property 4568 def d0Tension(self) -> float: 4569 return self._Entity.d0Tension 4570 4571 @property 4572 def cd(self) -> float: 4573 return self._Entity.cd 4574 4575 @property 4576 def d0Compression(self) -> float: 4577 return self._Entity.d0Compression 4578 4579 @property 4580 def TLt(self) -> float: 4581 return self._Entity.TLt 4582 4583 @property 4584 def TLc(self) -> float: 4585 return self._Entity.TLc 4586 4587 @property 4588 def TTt(self) -> float: 4589 return self._Entity.TTt 4590 4591 @property 4592 def TTc(self) -> float: 4593 return self._Entity.TTc 4594 4595 @property 4596 def OrthotropicAllowableCurvePoints(self) -> list[OrthotropicAllowableCurvePoint]: 4597 return [OrthotropicAllowableCurvePoint(orthotropicAllowableCurvePoint) for orthotropicAllowableCurvePoint in self._Entity.OrthotropicAllowableCurvePoints] 4598 4599 @Temperature.setter 4600 def Temperature(self, value: float) -> None: 4601 self._Entity.Temperature = value 4602 4603 @Et1.setter 4604 def Et1(self, value: float) -> None: 4605 self._Entity.Et1 = value 4606 4607 @Et2.setter 4608 def Et2(self, value: float) -> None: 4609 self._Entity.Et2 = value 4610 4611 @vt12.setter 4612 def vt12(self, value: float) -> None: 4613 self._Entity.vt12 = value 4614 4615 @Ec1.setter 4616 def Ec1(self, value: float) -> None: 4617 self._Entity.Ec1 = value 4618 4619 @Ec2.setter 4620 def Ec2(self, value: float) -> None: 4621 self._Entity.Ec2 = value 4622 4623 @vc12.setter 4624 def vc12(self, value: float) -> None: 4625 self._Entity.vc12 = value 4626 4627 @G12.setter 4628 def G12(self, value: float) -> None: 4629 self._Entity.G12 = value 4630 4631 @G13.setter 4632 def G13(self, value: float) -> None: 4633 self._Entity.G13 = value 4634 4635 @G23.setter 4636 def G23(self, value: float) -> None: 4637 self._Entity.G23 = value 4638 4639 @Ftu1.setter 4640 def Ftu1(self, value: float) -> None: 4641 self._Entity.Ftu1 = value 4642 4643 @Ftu2.setter 4644 def Ftu2(self, value: float) -> None: 4645 self._Entity.Ftu2 = value 4646 4647 @Fcu1.setter 4648 def Fcu1(self, value: float) -> None: 4649 self._Entity.Fcu1 = value 4650 4651 @Fcu2.setter 4652 def Fcu2(self, value: float) -> None: 4653 self._Entity.Fcu2 = value 4654 4655 @Fsu12.setter 4656 def Fsu12(self, value: float) -> None: 4657 self._Entity.Fsu12 = value 4658 4659 @Fsu13.setter 4660 def Fsu13(self, value: float) -> None: 4661 self._Entity.Fsu13 = value 4662 4663 @Fsu23.setter 4664 def Fsu23(self, value: float) -> None: 4665 self._Entity.Fsu23 = value 4666 4667 @GIc.setter 4668 def GIc(self, value: float) -> None: 4669 self._Entity.GIc = value 4670 4671 @alpha1.setter 4672 def alpha1(self, value: float) -> None: 4673 self._Entity.alpha1 = value 4674 4675 @alpha2.setter 4676 def alpha2(self, value: float) -> None: 4677 self._Entity.alpha2 = value 4678 4679 @K1.setter 4680 def K1(self, value: float) -> None: 4681 self._Entity.K1 = value 4682 4683 @K2.setter 4684 def K2(self, value: float) -> None: 4685 self._Entity.K2 = value 4686 4687 @C.setter 4688 def C(self, value: float) -> None: 4689 self._Entity.C = value 4690 4691 @etu1.setter 4692 def etu1(self, value: float) -> None: 4693 self._Entity.etu1 = value 4694 4695 @etu2.setter 4696 def etu2(self, value: float) -> None: 4697 self._Entity.etu2 = value 4698 4699 @ecu1.setter 4700 def ecu1(self, value: float) -> None: 4701 self._Entity.ecu1 = value 4702 4703 @ecu2.setter 4704 def ecu2(self, value: float) -> None: 4705 self._Entity.ecu2 = value 4706 4707 @ecuoh.setter 4708 def ecuoh(self, value: float) -> None: 4709 self._Entity.ecuoh = value 4710 4711 @ecuai.setter 4712 def ecuai(self, value: float) -> None: 4713 self._Entity.ecuai = value 4714 4715 @esu12.setter 4716 def esu12(self, value: float) -> None: 4717 self._Entity.esu12 = value 4718 4719 @Ftu3.setter 4720 def Ftu3(self, value: float) -> None: 4721 self._Entity.Ftu3 = value 4722 4723 @GIIc.setter 4724 def GIIc(self, value: float) -> None: 4725 self._Entity.GIIc = value 4726 4727 @d0Tension.setter 4728 def d0Tension(self, value: float) -> None: 4729 self._Entity.d0Tension = value 4730 4731 @cd.setter 4732 def cd(self, value: float) -> None: 4733 self._Entity.cd = value 4734 4735 @d0Compression.setter 4736 def d0Compression(self, value: float) -> None: 4737 self._Entity.d0Compression = value 4738 4739 @TLt.setter 4740 def TLt(self, value: float) -> None: 4741 self._Entity.TLt = value 4742 4743 @TLc.setter 4744 def TLc(self, value: float) -> None: 4745 self._Entity.TLc = value 4746 4747 @TTt.setter 4748 def TTt(self, value: float) -> None: 4749 self._Entity.TTt = value 4750 4751 @TTc.setter 4752 def TTc(self, value: float) -> None: 4753 self._Entity.TTc = value 4754 4755 def AddCurvePoint(self, property: types.AllowablePropertyName, x: float, y: float) -> OrthotropicAllowableCurvePoint: 4756 return OrthotropicAllowableCurvePoint(self._Entity.AddCurvePoint(_types.AllowablePropertyName(property.value), x, y)) 4757 4758 def DeleteCurvePoint(self, property: types.AllowablePropertyName, x: float) -> bool: 4759 return self._Entity.DeleteCurvePoint(_types.AllowablePropertyName(property.value), x) 4760 4761 def GetCurvePoint(self, property: types.AllowablePropertyName, x: float) -> OrthotropicAllowableCurvePoint: 4762 return OrthotropicAllowableCurvePoint(self._Entity.GetCurvePoint(_types.AllowablePropertyName(property.value), x))
Orthotropic material temperature dependent properties.
4765class Orthotropic: 4766 ''' 4767 Orthotropic material. 4768 ''' 4769 def __init__(self, orthotropic: _api.Orthotropic): 4770 self._Entity = orthotropic 4771 4772 @property 4773 def MaterialFamilyName(self) -> str: 4774 return self._Entity.MaterialFamilyName 4775 4776 @property 4777 def Id(self) -> int: 4778 return self._Entity.Id 4779 4780 @property 4781 def CreationDate(self) -> DateTime: 4782 return self._Entity.CreationDate 4783 4784 @property 4785 def ModificationDate(self) -> DateTime: 4786 return self._Entity.ModificationDate 4787 4788 @property 4789 def Name(self) -> str: 4790 return self._Entity.Name 4791 4792 @property 4793 def Form(self) -> str: 4794 return self._Entity.Form 4795 4796 @property 4797 def Specification(self) -> str: 4798 return self._Entity.Specification 4799 4800 @property 4801 def Basis(self) -> str: 4802 return self._Entity.Basis 4803 4804 @property 4805 def Wet(self) -> bool: 4806 return self._Entity.Wet 4807 4808 @property 4809 def Thickness(self) -> float: 4810 return self._Entity.Thickness 4811 4812 @property 4813 def Density(self) -> float: 4814 return self._Entity.Density 4815 4816 @property 4817 def FiberVolume(self) -> float: 4818 return self._Entity.FiberVolume 4819 4820 @property 4821 def GlassTransition(self) -> float: 4822 return self._Entity.GlassTransition 4823 4824 @property 4825 def Manufacturer(self) -> str: 4826 return self._Entity.Manufacturer 4827 4828 @property 4829 def Processes(self) -> str: 4830 return self._Entity.Processes 4831 4832 @property 4833 def MaterialDescription(self) -> str: 4834 return self._Entity.MaterialDescription 4835 4836 @property 4837 def UserNote(self) -> str: 4838 return self._Entity.UserNote 4839 4840 @property 4841 def BendingCorrectionFactor(self) -> float: 4842 return self._Entity.BendingCorrectionFactor 4843 4844 @property 4845 def FemMaterialId(self) -> int: 4846 return self._Entity.FemMaterialId 4847 4848 @property 4849 def Cost(self) -> float: 4850 return self._Entity.Cost 4851 4852 @property 4853 def BucklingStiffnessKnockdown(self) -> float: 4854 return self._Entity.BucklingStiffnessKnockdown 4855 4856 @property 4857 def OrthotropicTemperatureProperties(self) -> list[OrthotropicTemperature]: 4858 return [OrthotropicTemperature(orthotropicTemperature) for orthotropicTemperature in self._Entity.OrthotropicTemperatureProperties] 4859 4860 @property 4861 def OrthotropicLaminateAllowables(self) -> list[OrthotropicLaminateAllowable]: 4862 return [OrthotropicLaminateAllowable(orthotropicLaminateAllowable) for orthotropicLaminateAllowable in self._Entity.OrthotropicLaminateAllowables] 4863 4864 @property 4865 def OrthotropicEffectiveLaminate(self) -> OrthotropicEffectiveLaminate: 4866 ''' 4867 Orthotropic material effective laminate properties. Read-only from the API. 4868 Check if material is an effective laminate with orthotropic.IsEffectiveLaminate. 4869 ''' 4870 result = self._Entity.OrthotropicEffectiveLaminate 4871 return OrthotropicEffectiveLaminate(result) if result is not None else None 4872 4873 @property 4874 def OrthotropicEquationCorrectionFactors(self) -> dict[OrthotropicCorrectionFactorPoint, OrthotropicEquationCorrectionFactor]: 4875 orthotropicEquationCorrectionFactorsDict = {} 4876 for kvp in self._Entity.OrthotropicEquationCorrectionFactors: 4877 orthotropicEquationCorrectionFactorsDict[OrthotropicCorrectionFactorPoint(kvp.Key)] = OrthotropicEquationCorrectionFactor(kvp.Value) 4878 4879 return orthotropicEquationCorrectionFactorsDict 4880 4881 @property 4882 def OrthotropicTabularCorrectionFactors(self) -> dict[OrthotropicCorrectionFactorPoint, OrthotropicTabularCorrectionFactor]: 4883 orthotropicTabularCorrectionFactorsDict = {} 4884 for kvp in self._Entity.OrthotropicTabularCorrectionFactors: 4885 orthotropicTabularCorrectionFactorsDict[OrthotropicCorrectionFactorPoint(kvp.Key)] = OrthotropicTabularCorrectionFactor(kvp.Value) 4886 4887 return orthotropicTabularCorrectionFactorsDict 4888 4889 @MaterialFamilyName.setter 4890 def MaterialFamilyName(self, value: str) -> None: 4891 self._Entity.MaterialFamilyName = value 4892 4893 @Name.setter 4894 def Name(self, value: str) -> None: 4895 self._Entity.Name = value 4896 4897 @Form.setter 4898 def Form(self, value: str) -> None: 4899 self._Entity.Form = value 4900 4901 @Specification.setter 4902 def Specification(self, value: str) -> None: 4903 self._Entity.Specification = value 4904 4905 @Basis.setter 4906 def Basis(self, value: str) -> None: 4907 self._Entity.Basis = value 4908 4909 @Wet.setter 4910 def Wet(self, value: bool) -> None: 4911 self._Entity.Wet = value 4912 4913 @Thickness.setter 4914 def Thickness(self, value: float) -> None: 4915 self._Entity.Thickness = value 4916 4917 @Density.setter 4918 def Density(self, value: float) -> None: 4919 self._Entity.Density = value 4920 4921 @FiberVolume.setter 4922 def FiberVolume(self, value: float) -> None: 4923 self._Entity.FiberVolume = value 4924 4925 @GlassTransition.setter 4926 def GlassTransition(self, value: float) -> None: 4927 self._Entity.GlassTransition = value 4928 4929 @Manufacturer.setter 4930 def Manufacturer(self, value: str) -> None: 4931 self._Entity.Manufacturer = value 4932 4933 @Processes.setter 4934 def Processes(self, value: str) -> None: 4935 self._Entity.Processes = value 4936 4937 @MaterialDescription.setter 4938 def MaterialDescription(self, value: str) -> None: 4939 self._Entity.MaterialDescription = value 4940 4941 @UserNote.setter 4942 def UserNote(self, value: str) -> None: 4943 self._Entity.UserNote = value 4944 4945 @BendingCorrectionFactor.setter 4946 def BendingCorrectionFactor(self, value: float) -> None: 4947 self._Entity.BendingCorrectionFactor = value 4948 4949 @FemMaterialId.setter 4950 def FemMaterialId(self, value: int) -> None: 4951 self._Entity.FemMaterialId = value 4952 4953 @Cost.setter 4954 def Cost(self, value: float) -> None: 4955 self._Entity.Cost = value 4956 4957 @BucklingStiffnessKnockdown.setter 4958 def BucklingStiffnessKnockdown(self, value: float) -> None: 4959 self._Entity.BucklingStiffnessKnockdown = value 4960 4961 def AddTemperatureProperty(self, temperature: float, et1: float, et2: float, vt12: float, ec1: float, ec2: float, vc12: float, g12: float, ftu1: float, ftu2: float, fcu1: float, fcu2: float, fsu12: float, alpha1: float, alpha2: float, etu1: float, etu2: float, ecu1: float, ecu2: float, esu12: float) -> OrthotropicTemperature: 4962 return OrthotropicTemperature(self._Entity.AddTemperatureProperty(temperature, et1, et2, vt12, ec1, ec2, vc12, g12, ftu1, ftu2, fcu1, fcu2, fsu12, alpha1, alpha2, etu1, etu2, ecu1, ecu2, esu12)) 4963 4964 def DeleteTemperatureProperty(self, temperature: float) -> bool: 4965 return self._Entity.DeleteTemperatureProperty(temperature) 4966 4967 def GetTemperature(self, lookupTemperature: float) -> OrthotropicTemperature: 4968 return OrthotropicTemperature(self._Entity.GetTemperature(lookupTemperature)) 4969 4970 def IsEffectiveLaminate(self) -> bool: 4971 ''' 4972 Returns true if this material is an effective laminate. 4973 ''' 4974 return self._Entity.IsEffectiveLaminate() 4975 4976 def HasLaminateAllowable(self, property: types.AllowablePropertyName) -> bool: 4977 return self._Entity.HasLaminateAllowable(_types.AllowablePropertyName(property.value)) 4978 4979 def AddLaminateAllowable(self, property: types.AllowablePropertyName, method: types.AllowableMethodName) -> OrthotropicLaminateAllowable: 4980 return OrthotropicLaminateAllowable(self._Entity.AddLaminateAllowable(_types.AllowablePropertyName(property.value), _types.AllowableMethodName(method.value))) 4981 4982 def GetLaminateAllowable(self, lookupAllowableProperty: types.AllowablePropertyName) -> OrthotropicLaminateAllowable: 4983 return OrthotropicLaminateAllowable(self._Entity.GetLaminateAllowable(_types.AllowablePropertyName(lookupAllowableProperty.value))) 4984 4985 def AddEquationCorrectionFactor(self, propertyId: types.CorrectionProperty, correctionId: types.CorrectionId, equationId: types.CorrectionEquation) -> OrthotropicEquationCorrectionFactor: 4986 return OrthotropicEquationCorrectionFactor(self._Entity.AddEquationCorrectionFactor(_types.CorrectionProperty(propertyId.value), _types.CorrectionId(correctionId.value), _types.CorrectionEquation(equationId.value))) 4987 4988 def GetEquationCorrectionFactor(self, property: types.CorrectionProperty, correction: types.CorrectionId) -> OrthotropicEquationCorrectionFactor: 4989 return OrthotropicEquationCorrectionFactor(self._Entity.GetEquationCorrectionFactor(_types.CorrectionProperty(property.value), _types.CorrectionId(correction.value))) 4990 4991 def GetTabularCorrectionFactor(self, property: types.CorrectionProperty, correction: types.CorrectionId) -> OrthotropicTabularCorrectionFactor: 4992 return OrthotropicTabularCorrectionFactor(self._Entity.GetTabularCorrectionFactor(_types.CorrectionProperty(property.value), _types.CorrectionId(correction.value))) 4993 4994 def Save(self) -> None: 4995 ''' 4996 Save any changes to this orthotropic material to the database. 4997 ''' 4998 return self._Entity.Save()
Orthotropic material.
4864 @property 4865 def OrthotropicEffectiveLaminate(self) -> OrthotropicEffectiveLaminate: 4866 ''' 4867 Orthotropic material effective laminate properties. Read-only from the API. 4868 Check if material is an effective laminate with orthotropic.IsEffectiveLaminate. 4869 ''' 4870 result = self._Entity.OrthotropicEffectiveLaminate 4871 return OrthotropicEffectiveLaminate(result) if result is not None else None
Orthotropic material effective laminate properties. Read-only from the API. Check if material is an effective laminate with orthotropic.IsEffectiveLaminate.
4873 @property 4874 def OrthotropicEquationCorrectionFactors(self) -> dict[OrthotropicCorrectionFactorPoint, OrthotropicEquationCorrectionFactor]: 4875 orthotropicEquationCorrectionFactorsDict = {} 4876 for kvp in self._Entity.OrthotropicEquationCorrectionFactors: 4877 orthotropicEquationCorrectionFactorsDict[OrthotropicCorrectionFactorPoint(kvp.Key)] = OrthotropicEquationCorrectionFactor(kvp.Value) 4878 4879 return orthotropicEquationCorrectionFactorsDict
4881 @property 4882 def OrthotropicTabularCorrectionFactors(self) -> dict[OrthotropicCorrectionFactorPoint, OrthotropicTabularCorrectionFactor]: 4883 orthotropicTabularCorrectionFactorsDict = {} 4884 for kvp in self._Entity.OrthotropicTabularCorrectionFactors: 4885 orthotropicTabularCorrectionFactorsDict[OrthotropicCorrectionFactorPoint(kvp.Key)] = OrthotropicTabularCorrectionFactor(kvp.Value) 4886 4887 return orthotropicTabularCorrectionFactorsDict
4961 def AddTemperatureProperty(self, temperature: float, et1: float, et2: float, vt12: float, ec1: float, ec2: float, vc12: float, g12: float, ftu1: float, ftu2: float, fcu1: float, fcu2: float, fsu12: float, alpha1: float, alpha2: float, etu1: float, etu2: float, ecu1: float, ecu2: float, esu12: float) -> OrthotropicTemperature: 4962 return OrthotropicTemperature(self._Entity.AddTemperatureProperty(temperature, et1, et2, vt12, ec1, ec2, vc12, g12, ftu1, ftu2, fcu1, fcu2, fsu12, alpha1, alpha2, etu1, etu2, ecu1, ecu2, esu12))
4970 def IsEffectiveLaminate(self) -> bool: 4971 ''' 4972 Returns true if this material is an effective laminate. 4973 ''' 4974 return self._Entity.IsEffectiveLaminate()
Returns true if this material is an effective laminate.
4979 def AddLaminateAllowable(self, property: types.AllowablePropertyName, method: types.AllowableMethodName) -> OrthotropicLaminateAllowable: 4980 return OrthotropicLaminateAllowable(self._Entity.AddLaminateAllowable(_types.AllowablePropertyName(property.value), _types.AllowableMethodName(method.value)))
4985 def AddEquationCorrectionFactor(self, propertyId: types.CorrectionProperty, correctionId: types.CorrectionId, equationId: types.CorrectionEquation) -> OrthotropicEquationCorrectionFactor: 4986 return OrthotropicEquationCorrectionFactor(self._Entity.AddEquationCorrectionFactor(_types.CorrectionProperty(propertyId.value), _types.CorrectionId(correctionId.value), _types.CorrectionEquation(equationId.value)))
4988 def GetEquationCorrectionFactor(self, property: types.CorrectionProperty, correction: types.CorrectionId) -> OrthotropicEquationCorrectionFactor: 4989 return OrthotropicEquationCorrectionFactor(self._Entity.GetEquationCorrectionFactor(_types.CorrectionProperty(property.value), _types.CorrectionId(correction.value)))
4991 def GetTabularCorrectionFactor(self, property: types.CorrectionProperty, correction: types.CorrectionId) -> OrthotropicTabularCorrectionFactor: 4992 return OrthotropicTabularCorrectionFactor(self._Entity.GetTabularCorrectionFactor(_types.CorrectionProperty(property.value), _types.CorrectionId(correction.value)))
5001class Vector2d: 5002 ''' 5003 Represents a readonly 2D vector. 5004 ''' 5005 def __init__(self, vector2d: _api.Vector2d): 5006 self._Entity = vector2d 5007 5008 def Create_Vector2d(x: float, y: float): 5009 return Vector2d(_api.Vector2d(x, y)) 5010 5011 @property 5012 def X(self) -> float: 5013 return self._Entity.X 5014 5015 @property 5016 def Y(self) -> float: 5017 return self._Entity.Y 5018 5019 @overload 5020 def Equals(self, other) -> bool: ... 5021 5022 @overload 5023 def Equals(self, obj) -> bool: ... 5024 5025 def GetHashCode(self) -> int: 5026 return self._Entity.GetHashCode() 5027 5028 def Equals(self, item1 = None) -> bool: 5029 if isinstance(item1, Vector2d): 5030 return self._Entity.Equals(item1._Entity) 5031 5032 return self._Entity.Equals(item1._Entity) 5033 5034 def __eq__(self, other): 5035 return self.Equals(other) 5036 5037 def __ne__(self, other): 5038 return not self.Equals(other)
Represents a readonly 2D vector.
5041class ElementSet(IdNameEntity): 5042 ''' 5043 A set of elements defined in the input file. 5044 ''' 5045 def __init__(self, elementSet: _api.ElementSet): 5046 self._Entity = elementSet 5047 5048 @property 5049 def Elements(self) -> ElementCol: 5050 result = self._Entity.Elements 5051 return ElementCol(result) if result is not None else None
A set of elements defined in the input file.
Inherited Members
5054class FemProperty(IdNameEntity): 5055 ''' 5056 A property description. 5057 ''' 5058 def __init__(self, femProperty: _api.FemProperty): 5059 self._Entity = femProperty 5060 5061 @property 5062 def Elements(self) -> ElementCol: 5063 result = self._Entity.Elements 5064 return ElementCol(result) if result is not None else None 5065 5066 @property 5067 def FemType(self) -> types.FemType: 5068 return types.FemType[self._Entity.FemType.ToString()]
A property description.
Inherited Members
5071class ElementSetCol(IdEntityCol[ElementSet]): 5072 def __init__(self, elementSetCol: _api.ElementSetCol): 5073 self._Entity = elementSetCol 5074 self._CollectedClass = ElementSet 5075 5076 @property 5077 def ElementSetColList(self) -> tuple[ElementSet]: 5078 return tuple([ElementSet(elementSetCol) for elementSetCol in self._Entity]) 5079 5080 def __getitem__(self, index: int): 5081 return self.ElementSetColList[index] 5082 5083 def __iter__(self): 5084 yield from self.ElementSetColList 5085 5086 def __len__(self): 5087 return len(self.ElementSetColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
5090class FemPropertyCol(IdEntityCol[FemProperty]): 5091 def __init__(self, femPropertyCol: _api.FemPropertyCol): 5092 self._Entity = femPropertyCol 5093 self._CollectedClass = FemProperty 5094 5095 @property 5096 def FemPropertyColList(self) -> tuple[FemProperty]: 5097 return tuple([FemProperty(femPropertyCol) for femPropertyCol in self._Entity]) 5098 5099 def __getitem__(self, index: int): 5100 return self.FemPropertyColList[index] 5101 5102 def __iter__(self): 5103 yield from self.FemPropertyColList 5104 5105 def __len__(self): 5106 return len(self.FemPropertyColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
5109class FemDataSet: 5110 def __init__(self, femDataSet: _api.FemDataSet): 5111 self._Entity = femDataSet 5112 5113 @property 5114 def FemProperties(self) -> FemPropertyCol: 5115 result = self._Entity.FemProperties 5116 return FemPropertyCol(result) if result is not None else None 5117 5118 @property 5119 def ElementSets(self) -> ElementSetCol: 5120 result = self._Entity.ElementSets 5121 return ElementSetCol(result) if result is not None else None
5124class PluginPackage(IdNameEntity): 5125 def __init__(self, pluginPackage: _api.PluginPackage): 5126 self._Entity = pluginPackage 5127 5128 @property 5129 def FilePath(self) -> str: 5130 return self._Entity.FilePath 5131 5132 @property 5133 def Version(self) -> str: 5134 return self._Entity.Version 5135 5136 @property 5137 def Description(self) -> str: 5138 return self._Entity.Description 5139 5140 @property 5141 def ModificationDate(self) -> DateTime: 5142 return self._Entity.ModificationDate
Represents an entity with an ID and Name.
Inherited Members
5145class Ply(IdNameEntity): 5146 def __init__(self, ply: _api.Ply): 5147 self._Entity = ply 5148 5149 @property 5150 def InnerCurves(self) -> list[int]: 5151 return [int32 for int32 in self._Entity.InnerCurves] 5152 5153 @property 5154 def OuterCurves(self) -> list[int]: 5155 return [int32 for int32 in self._Entity.OuterCurves] 5156 5157 @property 5158 def FiberDirectionCurves(self) -> list[int]: 5159 return [int32 for int32 in self._Entity.FiberDirectionCurves] 5160 5161 @property 5162 def Area(self) -> float: 5163 return self._Entity.Area 5164 5165 @property 5166 def Description(self) -> str: 5167 return self._Entity.Description 5168 5169 @property 5170 def Elements(self) -> ElementCol: 5171 result = self._Entity.Elements 5172 return ElementCol(result) if result is not None else None 5173 5174 @property 5175 def MaterialId(self) -> int: 5176 return self._Entity.MaterialId 5177 5178 @property 5179 def Orientation(self) -> int: 5180 return self._Entity.Orientation 5181 5182 @property 5183 def Sequence(self) -> int: 5184 return self._Entity.Sequence 5185 5186 @property 5187 def StructureId(self) -> int: 5188 return self._Entity.StructureId 5189 5190 @property 5191 def Thickness(self) -> float: 5192 return self._Entity.Thickness
Represents an entity with an ID and Name.
Inherited Members
5195class Rundeck(IdEntity): 5196 def __init__(self, rundeck: _api.Rundeck): 5197 self._Entity = rundeck 5198 5199 @property 5200 def InputFilePath(self) -> str: 5201 return self._Entity.InputFilePath 5202 5203 @property 5204 def IsPrimary(self) -> bool: 5205 return self._Entity.IsPrimary 5206 5207 @property 5208 def ResultFilePath(self) -> str: 5209 return self._Entity.ResultFilePath 5210 5211 def SetInputFilePath(self, filepath: str) -> RundeckUpdateStatus: 5212 return RundeckUpdateStatus[self._Entity.SetInputFilePath(filepath).ToString()] 5213 5214 def SetResultFilePath(self, filepath: str) -> RundeckUpdateStatus: 5215 return RundeckUpdateStatus[self._Entity.SetResultFilePath(filepath).ToString()]
Represents an entity with an ID.
5218class RundeckPathPair: 5219 def __init__(self, rundeckPathPair: _api.RundeckPathPair): 5220 self._Entity = rundeckPathPair 5221 5222 @property 5223 def InputFilePath(self) -> str: 5224 return self._Entity.InputFilePath 5225 5226 @property 5227 def ResultFilePath(self) -> str: 5228 return self._Entity.ResultFilePath 5229 5230 @InputFilePath.setter 5231 def InputFilePath(self, value: str) -> None: 5232 self._Entity.InputFilePath = value 5233 5234 @ResultFilePath.setter 5235 def ResultFilePath(self, value: str) -> None: 5236 self._Entity.ResultFilePath = value
5239class BeamLoads: 5240 def __init__(self, beamLoads: _api.BeamLoads): 5241 self._Entity = beamLoads 5242 5243 @property 5244 def AxialForce(self) -> float: 5245 return self._Entity.AxialForce 5246 5247 @property 5248 def MomentX(self) -> float: 5249 return self._Entity.MomentX 5250 5251 @property 5252 def MomentY(self) -> float: 5253 return self._Entity.MomentY 5254 5255 @property 5256 def ShearX(self) -> float: 5257 return self._Entity.ShearX 5258 5259 @property 5260 def ShearY(self) -> float: 5261 return self._Entity.ShearY 5262 5263 @property 5264 def Torque(self) -> float: 5265 return self._Entity.Torque
5268class SectionCut(IdNameEntity): 5269 def __init__(self, sectionCut: _api.SectionCut): 5270 self._Entity = sectionCut 5271 5272 @property 5273 def ReferencePoint(self) -> types.SectionCutPropertyLocation: 5274 ''' 5275 Centroid vs Origin 5276 ''' 5277 return types.SectionCutPropertyLocation[self._Entity.ReferencePoint.ToString()] 5278 5279 @property 5280 def HorizontalVector(self) -> Vector3d: 5281 ''' 5282 Represents a readonly 3D vector. 5283 ''' 5284 result = self._Entity.HorizontalVector 5285 return Vector3d(result) if result is not None else None 5286 5287 @property 5288 def NormalVector(self) -> Vector3d: 5289 ''' 5290 Represents a readonly 3D vector. 5291 ''' 5292 result = self._Entity.NormalVector 5293 return Vector3d(result) if result is not None else None 5294 5295 @property 5296 def OriginVector(self) -> Vector3d: 5297 ''' 5298 Represents a readonly 3D vector. 5299 ''' 5300 result = self._Entity.OriginVector 5301 return Vector3d(result) if result is not None else None 5302 5303 @property 5304 def VerticalVector(self) -> Vector3d: 5305 ''' 5306 Represents a readonly 3D vector. 5307 ''' 5308 result = self._Entity.VerticalVector 5309 return Vector3d(result) if result is not None else None 5310 5311 @property 5312 def MaxAngleBound(self) -> float: 5313 return self._Entity.MaxAngleBound 5314 5315 @property 5316 def MinAngleBound(self) -> float: 5317 return self._Entity.MinAngleBound 5318 5319 @property 5320 def MinStiffnessEihh(self) -> float: 5321 return self._Entity.MinStiffnessEihh 5322 5323 @property 5324 def MinStiffnessEivv(self) -> float: 5325 return self._Entity.MinStiffnessEivv 5326 5327 @property 5328 def MinStiffnessGJ(self) -> float: 5329 return self._Entity.MinStiffnessGJ 5330 5331 @property 5332 def ZoneStiffnessDistribution(self) -> float: 5333 return self._Entity.ZoneStiffnessDistribution 5334 5335 @property 5336 def CN_hmax(self) -> float: 5337 return self._Entity.CN_hmax 5338 5339 @property 5340 def CN_hmin(self) -> float: 5341 return self._Entity.CN_hmin 5342 5343 @property 5344 def CN_vmax(self) -> float: 5345 return self._Entity.CN_vmax 5346 5347 @property 5348 def CN_vmin(self) -> float: 5349 return self._Entity.CN_vmin 5350 5351 @property 5352 def CQ_hmax(self) -> float: 5353 return self._Entity.CQ_hmax 5354 5355 @property 5356 def CQ_hmin(self) -> float: 5357 return self._Entity.CQ_hmin 5358 5359 @property 5360 def CQ_vmax(self) -> float: 5361 return self._Entity.CQ_vmax 5362 5363 @property 5364 def CQ_vmin(self) -> float: 5365 return self._Entity.CQ_vmin 5366 5367 @property 5368 def CG(self) -> Vector2d: 5369 ''' 5370 Represents a readonly 2D vector. 5371 ''' 5372 result = self._Entity.CG 5373 return Vector2d(result) if result is not None else None 5374 5375 @property 5376 def CN(self) -> Vector2d: 5377 ''' 5378 Represents a readonly 2D vector. 5379 ''' 5380 result = self._Entity.CN 5381 return Vector2d(result) if result is not None else None 5382 5383 @property 5384 def CQ(self) -> Vector2d: 5385 ''' 5386 Represents a readonly 2D vector. 5387 ''' 5388 result = self._Entity.CQ 5389 return Vector2d(result) if result is not None else None 5390 5391 @property 5392 def EnclosedArea(self) -> float: 5393 return self._Entity.EnclosedArea 5394 5395 @property 5396 def NumberOfCells(self) -> int: 5397 return self._Entity.NumberOfCells 5398 5399 @property 5400 def EIhh(self) -> float: 5401 return self._Entity.EIhh 5402 5403 @property 5404 def EIhv(self) -> float: 5405 return self._Entity.EIhv 5406 5407 @property 5408 def EIvv(self) -> float: 5409 return self._Entity.EIvv 5410 5411 @property 5412 def GJ(self) -> float: 5413 return self._Entity.GJ 5414 5415 @property 5416 def EA(self) -> float: 5417 return self._Entity.EA 5418 5419 @property 5420 def EImax(self) -> float: 5421 return self._Entity.EImax 5422 5423 @property 5424 def EImin(self) -> float: 5425 return self._Entity.EImin 5426 5427 @property 5428 def PrincipalAngle(self) -> float: 5429 return self._Entity.PrincipalAngle 5430 5431 @property 5432 def Elements(self) -> ElementCol: 5433 result = self._Entity.Elements 5434 return ElementCol(result) if result is not None else None 5435 5436 @property 5437 def PlateElements(self) -> ElementCol: 5438 result = self._Entity.PlateElements 5439 return ElementCol(result) if result is not None else None 5440 5441 @property 5442 def BeamElements(self) -> ElementCol: 5443 result = self._Entity.BeamElements 5444 return ElementCol(result) if result is not None else None 5445 5446 @ReferencePoint.setter 5447 def ReferencePoint(self, value: types.SectionCutPropertyLocation) -> None: 5448 self._Entity.ReferencePoint = _types.SectionCutPropertyLocation(value.value) 5449 5450 @MaxAngleBound.setter 5451 def MaxAngleBound(self, value: float) -> None: 5452 self._Entity.MaxAngleBound = value 5453 5454 @MinAngleBound.setter 5455 def MinAngleBound(self, value: float) -> None: 5456 self._Entity.MinAngleBound = value 5457 5458 @MinStiffnessEihh.setter 5459 def MinStiffnessEihh(self, value: float) -> None: 5460 self._Entity.MinStiffnessEihh = value 5461 5462 @MinStiffnessEivv.setter 5463 def MinStiffnessEivv(self, value: float) -> None: 5464 self._Entity.MinStiffnessEivv = value 5465 5466 @MinStiffnessGJ.setter 5467 def MinStiffnessGJ(self, value: float) -> None: 5468 self._Entity.MinStiffnessGJ = value 5469 5470 @ZoneStiffnessDistribution.setter 5471 def ZoneStiffnessDistribution(self, value: float) -> None: 5472 self._Entity.ZoneStiffnessDistribution = value 5473 5474 @CN_hmax.setter 5475 def CN_hmax(self, value: float) -> None: 5476 self._Entity.CN_hmax = value 5477 5478 @CN_hmin.setter 5479 def CN_hmin(self, value: float) -> None: 5480 self._Entity.CN_hmin = value 5481 5482 @CN_vmax.setter 5483 def CN_vmax(self, value: float) -> None: 5484 self._Entity.CN_vmax = value 5485 5486 @CN_vmin.setter 5487 def CN_vmin(self, value: float) -> None: 5488 self._Entity.CN_vmin = value 5489 5490 @CQ_hmax.setter 5491 def CQ_hmax(self, value: float) -> None: 5492 self._Entity.CQ_hmax = value 5493 5494 @CQ_hmin.setter 5495 def CQ_hmin(self, value: float) -> None: 5496 self._Entity.CQ_hmin = value 5497 5498 @CQ_vmax.setter 5499 def CQ_vmax(self, value: float) -> None: 5500 self._Entity.CQ_vmax = value 5501 5502 @CQ_vmin.setter 5503 def CQ_vmin(self, value: float) -> None: 5504 self._Entity.CQ_vmin = value 5505 5506 def AlignToHorizontalPrincipalAxes(self) -> None: 5507 ''' 5508 Set this Section Cut's horizontal vector to be equal to its principal axis horizontal vector. 5509 ''' 5510 return self._Entity.AlignToHorizontalPrincipalAxes() 5511 5512 def AlignToVerticalPrincipalAxes(self) -> None: 5513 ''' 5514 Set this Section Cut's horizontal vector to be equal to its principal axis vertical vector. 5515 ''' 5516 return self._Entity.AlignToVerticalPrincipalAxes() 5517 5518 def SetHorizontalVector(self, vector: Vector3d) -> None: 5519 return self._Entity.SetHorizontalVector(vector._Entity) 5520 5521 def SetNormalVector(self, vector: Vector3d) -> None: 5522 return self._Entity.SetNormalVector(vector._Entity) 5523 5524 def SetOrigin(self, vector: Vector3d) -> None: 5525 return self._Entity.SetOrigin(vector._Entity) 5526 5527 def GetBeamLoads(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> BeamLoads: 5528 return BeamLoads(self._Entity.GetBeamLoads(loadCaseId, _types.LoadSubCaseFactor(factor.value))) 5529 5530 def InclinationAngle(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> float: 5531 return self._Entity.InclinationAngle(loadCaseId, _types.LoadSubCaseFactor(factor.value)) 5532 5533 def HorizontalIntercept(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> float: 5534 return self._Entity.HorizontalIntercept(loadCaseId, _types.LoadSubCaseFactor(factor.value)) 5535 5536 def VerticalIntercept(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> float: 5537 return self._Entity.VerticalIntercept(loadCaseId, _types.LoadSubCaseFactor(factor.value)) 5538 5539 def SetElements(self, elements: list[int]) -> bool: 5540 elementsList = MakeCSharpIntList(elements) 5541 return self._Entity.SetElements(elementsList)
Represents an entity with an ID and Name.
5272 @property 5273 def ReferencePoint(self) -> types.SectionCutPropertyLocation: 5274 ''' 5275 Centroid vs Origin 5276 ''' 5277 return types.SectionCutPropertyLocation[self._Entity.ReferencePoint.ToString()]
Centroid vs Origin
5279 @property 5280 def HorizontalVector(self) -> Vector3d: 5281 ''' 5282 Represents a readonly 3D vector. 5283 ''' 5284 result = self._Entity.HorizontalVector 5285 return Vector3d(result) if result is not None else None
Represents a readonly 3D vector.
5287 @property 5288 def NormalVector(self) -> Vector3d: 5289 ''' 5290 Represents a readonly 3D vector. 5291 ''' 5292 result = self._Entity.NormalVector 5293 return Vector3d(result) if result is not None else None
Represents a readonly 3D vector.
5295 @property 5296 def OriginVector(self) -> Vector3d: 5297 ''' 5298 Represents a readonly 3D vector. 5299 ''' 5300 result = self._Entity.OriginVector 5301 return Vector3d(result) if result is not None else None
Represents a readonly 3D vector.
5303 @property 5304 def VerticalVector(self) -> Vector3d: 5305 ''' 5306 Represents a readonly 3D vector. 5307 ''' 5308 result = self._Entity.VerticalVector 5309 return Vector3d(result) if result is not None else None
Represents a readonly 3D vector.
5367 @property 5368 def CG(self) -> Vector2d: 5369 ''' 5370 Represents a readonly 2D vector. 5371 ''' 5372 result = self._Entity.CG 5373 return Vector2d(result) if result is not None else None
Represents a readonly 2D vector.
5375 @property 5376 def CN(self) -> Vector2d: 5377 ''' 5378 Represents a readonly 2D vector. 5379 ''' 5380 result = self._Entity.CN 5381 return Vector2d(result) if result is not None else None
Represents a readonly 2D vector.
5383 @property 5384 def CQ(self) -> Vector2d: 5385 ''' 5386 Represents a readonly 2D vector. 5387 ''' 5388 result = self._Entity.CQ 5389 return Vector2d(result) if result is not None else None
Represents a readonly 2D vector.
5506 def AlignToHorizontalPrincipalAxes(self) -> None: 5507 ''' 5508 Set this Section Cut's horizontal vector to be equal to its principal axis horizontal vector. 5509 ''' 5510 return self._Entity.AlignToHorizontalPrincipalAxes()
Set this Section Cut's horizontal vector to be equal to its principal axis horizontal vector.
5512 def AlignToVerticalPrincipalAxes(self) -> None: 5513 ''' 5514 Set this Section Cut's horizontal vector to be equal to its principal axis vertical vector. 5515 ''' 5516 return self._Entity.AlignToVerticalPrincipalAxes()
Set this Section Cut's horizontal vector to be equal to its principal axis vertical vector.
Inherited Members
5544class Set(ZoneJointContainer): 5545 def __init__(self, set: _api.Set): 5546 self._Entity = set 5547 5548 @property 5549 def Joints(self) -> JointCol: 5550 result = self._Entity.Joints 5551 return JointCol(result) if result is not None else None 5552 5553 @property 5554 def PanelSegments(self) -> PanelSegmentCol: 5555 result = self._Entity.PanelSegments 5556 return PanelSegmentCol(result) if result is not None else None 5557 5558 @property 5559 def Zones(self) -> ZoneCol: 5560 result = self._Entity.Zones 5561 return ZoneCol(result) if result is not None else None 5562 5563 @overload 5564 def AddJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5565 5566 @overload 5567 def AddPanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5568 5569 @overload 5570 def AddZones(self, zones: tuple[Zone]) -> CollectionModificationStatus: ... 5571 5572 @overload 5573 def RemoveJoints(self, jointIds: tuple[int]) -> CollectionModificationStatus: ... 5574 5575 @overload 5576 def RemovePanelSegments(self, segmentIds: tuple[int]) -> CollectionModificationStatus: ... 5577 5578 @overload 5579 def RemoveZones(self, zoneIds: tuple[int]) -> CollectionModificationStatus: ... 5580 5581 @overload 5582 def AddJoint(self, id: int) -> CollectionModificationStatus: ... 5583 5584 @overload 5585 def RemoveJoint(self, id: int) -> CollectionModificationStatus: ... 5586 5587 @overload 5588 def RemoveJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5589 5590 @overload 5591 def RemoveJoints(self, joints: JointCol) -> CollectionModificationStatus: ... 5592 5593 @overload 5594 def AddZone(self, id: int) -> CollectionModificationStatus: ... 5595 5596 @overload 5597 def AddZones(self, ids: tuple[int]) -> CollectionModificationStatus: ... 5598 5599 @overload 5600 def AddZone(self, zone: Zone) -> CollectionModificationStatus: ... 5601 5602 @overload 5603 def RemoveZone(self, id: int) -> CollectionModificationStatus: ... 5604 5605 @overload 5606 def RemoveZone(self, zone: Zone) -> CollectionModificationStatus: ... 5607 5608 @overload 5609 def RemoveZones(self, zones: ZoneCol) -> CollectionModificationStatus: ... 5610 5611 @overload 5612 def AddPanelSegment(self, id: int) -> CollectionModificationStatus: ... 5613 5614 @overload 5615 def RemovePanelSegment(self, id: int) -> CollectionModificationStatus: ... 5616 5617 @overload 5618 def RemovePanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5619 5620 @overload 5621 def RemovePanelSegments(self, segments: PanelSegmentCol) -> CollectionModificationStatus: ... 5622 5623 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 5624 if isinstance(item1, Joint): 5625 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5626 5627 if isinstance(item1, int): 5628 return CollectionModificationStatus(super().AddJoint(item1)) 5629 5630 return self._Entity.AddJoint(item1._Entity) 5631 5632 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 5633 if isinstance(item1, PanelSegment): 5634 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5635 5636 if isinstance(item1, int): 5637 return CollectionModificationStatus(super().AddPanelSegment(item1)) 5638 5639 return self._Entity.AddPanelSegment(item1._Entity) 5640 5641 def AddZones(self, item1 = None) -> CollectionModificationStatus: 5642 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], Zone): 5643 zonesList = List[_api.Zone]() 5644 if item1 is not None: 5645 for thing in item1: 5646 if thing is not None: 5647 zonesList.Add(thing._Entity) 5648 zonesEnumerable = IEnumerable(zonesList) 5649 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 5650 5651 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5652 return CollectionModificationStatus(super().AddZones(item1)) 5653 5654 return self._Entity.AddZones(item1) 5655 5656 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 5657 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5658 jointIdsList = MakeCSharpIntList(item1) 5659 jointIdsEnumerable = IEnumerable(jointIdsList) 5660 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 5661 5662 if isinstance(item1, JointCol): 5663 return CollectionModificationStatus(super().RemoveJoints(item1)) 5664 5665 return self._Entity.RemoveJoints(item1) 5666 5667 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 5668 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5669 segmentIdsList = MakeCSharpIntList(item1) 5670 segmentIdsEnumerable = IEnumerable(segmentIdsList) 5671 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 5672 5673 if isinstance(item1, PanelSegmentCol): 5674 return CollectionModificationStatus(super().RemovePanelSegments(item1)) 5675 5676 return self._Entity.RemovePanelSegments(item1) 5677 5678 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 5679 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5680 zoneIdsList = MakeCSharpIntList(item1) 5681 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5682 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 5683 5684 if isinstance(item1, ZoneCol): 5685 return CollectionModificationStatus(super().RemoveZones(item1)) 5686 5687 return self._Entity.RemoveZones(item1) 5688 5689 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 5690 if isinstance(item1, int): 5691 return CollectionModificationStatus(super().RemoveJoint(item1)) 5692 5693 if isinstance(item1, Joint): 5694 return CollectionModificationStatus(super().RemoveJoint(item1)) 5695 5696 return self._Entity.RemoveJoint(item1) 5697 5698 def AddZone(self, item1 = None) -> CollectionModificationStatus: 5699 if isinstance(item1, int): 5700 return CollectionModificationStatus(super().AddZone(item1)) 5701 5702 if isinstance(item1, Zone): 5703 return CollectionModificationStatus(super().AddZone(item1)) 5704 5705 return self._Entity.AddZone(item1) 5706 5707 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 5708 if isinstance(item1, int): 5709 return CollectionModificationStatus(super().RemoveZone(item1)) 5710 5711 if isinstance(item1, Zone): 5712 return CollectionModificationStatus(super().RemoveZone(item1)) 5713 5714 return self._Entity.RemoveZone(item1) 5715 5716 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 5717 if isinstance(item1, int): 5718 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 5719 5720 if isinstance(item1, PanelSegment): 5721 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 5722 5723 return self._Entity.RemovePanelSegment(item1)
Represents an entity that contains a collection of Zones and Joints.
5623 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 5624 if isinstance(item1, Joint): 5625 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5626 5627 if isinstance(item1, int): 5628 return CollectionModificationStatus(super().AddJoint(item1)) 5629 5630 return self._Entity.AddJoint(item1._Entity)
5632 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 5633 if isinstance(item1, PanelSegment): 5634 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5635 5636 if isinstance(item1, int): 5637 return CollectionModificationStatus(super().AddPanelSegment(item1)) 5638 5639 return self._Entity.AddPanelSegment(item1._Entity)
5641 def AddZones(self, item1 = None) -> CollectionModificationStatus: 5642 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], Zone): 5643 zonesList = List[_api.Zone]() 5644 if item1 is not None: 5645 for thing in item1: 5646 if thing is not None: 5647 zonesList.Add(thing._Entity) 5648 zonesEnumerable = IEnumerable(zonesList) 5649 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 5650 5651 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5652 return CollectionModificationStatus(super().AddZones(item1)) 5653 5654 return self._Entity.AddZones(item1)
5656 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 5657 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5658 jointIdsList = MakeCSharpIntList(item1) 5659 jointIdsEnumerable = IEnumerable(jointIdsList) 5660 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 5661 5662 if isinstance(item1, JointCol): 5663 return CollectionModificationStatus(super().RemoveJoints(item1)) 5664 5665 return self._Entity.RemoveJoints(item1)
5667 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 5668 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5669 segmentIdsList = MakeCSharpIntList(item1) 5670 segmentIdsEnumerable = IEnumerable(segmentIdsList) 5671 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 5672 5673 if isinstance(item1, PanelSegmentCol): 5674 return CollectionModificationStatus(super().RemovePanelSegments(item1)) 5675 5676 return self._Entity.RemovePanelSegments(item1)
5678 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 5679 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5680 zoneIdsList = MakeCSharpIntList(item1) 5681 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5682 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 5683 5684 if isinstance(item1, ZoneCol): 5685 return CollectionModificationStatus(super().RemoveZones(item1)) 5686 5687 return self._Entity.RemoveZones(item1)
5689 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 5690 if isinstance(item1, int): 5691 return CollectionModificationStatus(super().RemoveJoint(item1)) 5692 5693 if isinstance(item1, Joint): 5694 return CollectionModificationStatus(super().RemoveJoint(item1)) 5695 5696 return self._Entity.RemoveJoint(item1)
5698 def AddZone(self, item1 = None) -> CollectionModificationStatus: 5699 if isinstance(item1, int): 5700 return CollectionModificationStatus(super().AddZone(item1)) 5701 5702 if isinstance(item1, Zone): 5703 return CollectionModificationStatus(super().AddZone(item1)) 5704 5705 return self._Entity.AddZone(item1)
5707 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 5708 if isinstance(item1, int): 5709 return CollectionModificationStatus(super().RemoveZone(item1)) 5710 5711 if isinstance(item1, Zone): 5712 return CollectionModificationStatus(super().RemoveZone(item1)) 5713 5714 return self._Entity.RemoveZone(item1)
5716 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 5717 if isinstance(item1, int): 5718 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 5719 5720 if isinstance(item1, PanelSegment): 5721 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 5722 5723 return self._Entity.RemovePanelSegment(item1)
5726class PlyCol(IdNameEntityCol[Ply]): 5727 def __init__(self, plyCol: _api.PlyCol): 5728 self._Entity = plyCol 5729 self._CollectedClass = Ply 5730 5731 @property 5732 def PlyColList(self) -> tuple[Ply]: 5733 return tuple([Ply(plyCol) for plyCol in self._Entity]) 5734 5735 def Delete(self, id: int) -> CollectionModificationStatus: 5736 return CollectionModificationStatus[self._Entity.Delete(id).ToString()] 5737 5738 def DeleteAll(self) -> None: 5739 ''' 5740 Delete all plies in the collection. 5741 ''' 5742 return self._Entity.DeleteAll() 5743 5744 def ExportToCSV(self, filepath: str) -> None: 5745 return self._Entity.ExportToCSV(filepath) 5746 5747 def ImportCSV(self, filepath: str) -> None: 5748 return self._Entity.ImportCSV(filepath) 5749 5750 @overload 5751 def Get(self, name: str) -> Ply: ... 5752 5753 @overload 5754 def Get(self, id: int) -> Ply: ... 5755 5756 def Get(self, item1 = None) -> Ply: 5757 if isinstance(item1, str): 5758 return Ply(super().Get(item1)) 5759 5760 if isinstance(item1, int): 5761 return Ply(super().Get(item1)) 5762 5763 return self._Entity.Get(item1) 5764 5765 def __getitem__(self, index: int): 5766 return self.PlyColList[index] 5767 5768 def __iter__(self): 5769 yield from self.PlyColList 5770 5771 def __len__(self): 5772 return len(self.PlyColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
5738 def DeleteAll(self) -> None: 5739 ''' 5740 Delete all plies in the collection. 5741 ''' 5742 return self._Entity.DeleteAll()
Delete all plies in the collection.
Inherited Members
5775class Structure(ZoneJointContainer): 5776 def __init__(self, structure: _api.Structure): 5777 self._Entity = structure 5778 5779 @property 5780 def Plies(self) -> PlyCol: 5781 result = self._Entity.Plies 5782 return PlyCol(result) if result is not None else None 5783 5784 @property 5785 def Joints(self) -> JointCol: 5786 result = self._Entity.Joints 5787 return JointCol(result) if result is not None else None 5788 5789 @property 5790 def PanelSegments(self) -> PanelSegmentCol: 5791 result = self._Entity.PanelSegments 5792 return PanelSegmentCol(result) if result is not None else None 5793 5794 @property 5795 def Zones(self) -> ZoneCol: 5796 result = self._Entity.Zones 5797 return ZoneCol(result) if result is not None else None 5798 5799 def ExportVCP(self, fileName: str) -> None: 5800 return self._Entity.ExportVCP(fileName) 5801 5802 def AddElements(self, elementIds: tuple[int]) -> CollectionModificationStatus: 5803 elementIdsList = MakeCSharpIntList(elementIds) 5804 elementIdsEnumerable = IEnumerable(elementIdsList) 5805 return CollectionModificationStatus[self._Entity.AddElements(elementIdsEnumerable).ToString()] 5806 5807 @overload 5808 def AddJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5809 5810 @overload 5811 def AddPanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5812 5813 def AddPfemProperties(self, pfemPropertyIds: tuple[int]) -> CollectionModificationStatus: 5814 pfemPropertyIdsList = MakeCSharpIntList(pfemPropertyIds) 5815 pfemPropertyIdsEnumerable = IEnumerable(pfemPropertyIdsList) 5816 return CollectionModificationStatus[self._Entity.AddPfemProperties(pfemPropertyIdsEnumerable).ToString()] 5817 5818 @overload 5819 def AddZones(self, zones: tuple[Zone]) -> CollectionModificationStatus: ... 5820 5821 def CreateZone(self, elementIds: tuple[int], name: str = None) -> Zone: 5822 elementIdsList = MakeCSharpIntList(elementIds) 5823 elementIdsEnumerable = IEnumerable(elementIdsList) 5824 result = self._Entity.CreateZone(elementIdsEnumerable, name) 5825 thisClass = type(result).__name__ 5826 givenClass = Zone 5827 for subclass in Zone.__subclasses__(): 5828 if subclass.__name__ == thisClass: 5829 givenClass = subclass 5830 return givenClass(result) 5831 5832 def CreatePanelSegment(self, discreteTechnique: types.DiscreteTechnique, discreteElementLkp: dict[types.DiscreteDefinitionType, list[int]], name: str = None) -> PanelSegment: 5833 discreteElementLkpDict = Dictionary[_types.DiscreteDefinitionType, List[int]]() 5834 for kvp in discreteElementLkp: 5835 discreteElementLkpDict.Add(_types.DiscreteDefinitionType(kvp.value), MakeCSharpIntList(discreteElementLkp[kvp])) 5836 return PanelSegment(self._Entity.CreatePanelSegment(_types.DiscreteTechnique(discreteTechnique.value), discreteElementLkpDict, name)) 5837 5838 @overload 5839 def Remove(self, zoneIds: tuple[int], jointIds: tuple[int]) -> CollectionModificationStatus: ... 5840 5841 @overload 5842 def Remove(self, zoneIds: tuple[int], jointIds: tuple[int], panelSegmentIds: tuple[int]) -> CollectionModificationStatus: ... 5843 5844 @overload 5845 def RemoveJoints(self, jointIds: tuple[int]) -> CollectionModificationStatus: ... 5846 5847 @overload 5848 def RemovePanelSegments(self, segmentIds: tuple[int]) -> CollectionModificationStatus: ... 5849 5850 @overload 5851 def RemoveZones(self, zoneIds: tuple[int]) -> CollectionModificationStatus: ... 5852 5853 @overload 5854 def AddJoint(self, id: int) -> CollectionModificationStatus: ... 5855 5856 @overload 5857 def RemoveJoint(self, id: int) -> CollectionModificationStatus: ... 5858 5859 @overload 5860 def RemoveJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5861 5862 @overload 5863 def RemoveJoints(self, joints: JointCol) -> CollectionModificationStatus: ... 5864 5865 @overload 5866 def AddZone(self, id: int) -> CollectionModificationStatus: ... 5867 5868 @overload 5869 def AddZones(self, ids: tuple[int]) -> CollectionModificationStatus: ... 5870 5871 @overload 5872 def AddZone(self, zone: Zone) -> CollectionModificationStatus: ... 5873 5874 @overload 5875 def RemoveZone(self, id: int) -> CollectionModificationStatus: ... 5876 5877 @overload 5878 def RemoveZone(self, zone: Zone) -> CollectionModificationStatus: ... 5879 5880 @overload 5881 def RemoveZones(self, zones: ZoneCol) -> CollectionModificationStatus: ... 5882 5883 @overload 5884 def AddPanelSegment(self, id: int) -> CollectionModificationStatus: ... 5885 5886 @overload 5887 def RemovePanelSegment(self, id: int) -> CollectionModificationStatus: ... 5888 5889 @overload 5890 def RemovePanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5891 5892 @overload 5893 def RemovePanelSegments(self, segments: PanelSegmentCol) -> CollectionModificationStatus: ... 5894 5895 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 5896 if isinstance(item1, Joint): 5897 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5898 5899 if isinstance(item1, int): 5900 return CollectionModificationStatus(super().AddJoint(item1)) 5901 5902 return self._Entity.AddJoint(item1._Entity) 5903 5904 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 5905 if isinstance(item1, PanelSegment): 5906 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5907 5908 if isinstance(item1, int): 5909 return CollectionModificationStatus(super().AddPanelSegment(item1)) 5910 5911 return self._Entity.AddPanelSegment(item1._Entity) 5912 5913 def AddZones(self, item1 = None) -> CollectionModificationStatus: 5914 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], Zone): 5915 zonesList = List[_api.Zone]() 5916 if item1 is not None: 5917 for thing in item1: 5918 if thing is not None: 5919 zonesList.Add(thing._Entity) 5920 zonesEnumerable = IEnumerable(zonesList) 5921 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 5922 5923 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5924 return CollectionModificationStatus(super().AddZones(item1)) 5925 5926 return self._Entity.AddZones(item1) 5927 5928 def Remove(self, item1 = None, item2 = None, item3 = None) -> CollectionModificationStatus: 5929 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int) and isinstance(item2, tuple) and len(item2) > 0 and isinstance(item2[0], int) and isinstance(item3, tuple) and len(item3) > 0 and isinstance(item3[0], int): 5930 zoneIdsList = MakeCSharpIntList(item1) 5931 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5932 jointIdsList = MakeCSharpIntList(item2) 5933 jointIdsEnumerable = IEnumerable(jointIdsList) 5934 panelSegmentIdsList = MakeCSharpIntList(item3) 5935 panelSegmentIdsEnumerable = IEnumerable(panelSegmentIdsList) 5936 return CollectionModificationStatus[self._Entity.Remove(zoneIdsEnumerable, jointIdsEnumerable, panelSegmentIdsEnumerable).ToString()] 5937 5938 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int) and isinstance(item2, tuple) and len(item2) > 0 and isinstance(item2[0], int): 5939 zoneIdsList = MakeCSharpIntList(item1) 5940 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5941 jointIdsList = MakeCSharpIntList(item2) 5942 jointIdsEnumerable = IEnumerable(jointIdsList) 5943 return CollectionModificationStatus[self._Entity.Remove(zoneIdsEnumerable, jointIdsEnumerable).ToString()] 5944 5945 return self._Entity.Remove(item1, item2, item3) 5946 5947 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 5948 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5949 jointIdsList = MakeCSharpIntList(item1) 5950 jointIdsEnumerable = IEnumerable(jointIdsList) 5951 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 5952 5953 if isinstance(item1, JointCol): 5954 return CollectionModificationStatus(super().RemoveJoints(item1)) 5955 5956 return self._Entity.RemoveJoints(item1) 5957 5958 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 5959 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5960 segmentIdsList = MakeCSharpIntList(item1) 5961 segmentIdsEnumerable = IEnumerable(segmentIdsList) 5962 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 5963 5964 if isinstance(item1, PanelSegmentCol): 5965 return CollectionModificationStatus(super().RemovePanelSegments(item1)) 5966 5967 return self._Entity.RemovePanelSegments(item1) 5968 5969 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 5970 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5971 zoneIdsList = MakeCSharpIntList(item1) 5972 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5973 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 5974 5975 if isinstance(item1, ZoneCol): 5976 return CollectionModificationStatus(super().RemoveZones(item1)) 5977 5978 return self._Entity.RemoveZones(item1) 5979 5980 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 5981 if isinstance(item1, int): 5982 return CollectionModificationStatus(super().RemoveJoint(item1)) 5983 5984 if isinstance(item1, Joint): 5985 return CollectionModificationStatus(super().RemoveJoint(item1)) 5986 5987 return self._Entity.RemoveJoint(item1) 5988 5989 def AddZone(self, item1 = None) -> CollectionModificationStatus: 5990 if isinstance(item1, int): 5991 return CollectionModificationStatus(super().AddZone(item1)) 5992 5993 if isinstance(item1, Zone): 5994 return CollectionModificationStatus(super().AddZone(item1)) 5995 5996 return self._Entity.AddZone(item1) 5997 5998 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 5999 if isinstance(item1, int): 6000 return CollectionModificationStatus(super().RemoveZone(item1)) 6001 6002 if isinstance(item1, Zone): 6003 return CollectionModificationStatus(super().RemoveZone(item1)) 6004 6005 return self._Entity.RemoveZone(item1) 6006 6007 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 6008 if isinstance(item1, int): 6009 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 6010 6011 if isinstance(item1, PanelSegment): 6012 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 6013 6014 return self._Entity.RemovePanelSegment(item1)
Represents an entity that contains a collection of Zones and Joints.
5895 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 5896 if isinstance(item1, Joint): 5897 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5898 5899 if isinstance(item1, int): 5900 return CollectionModificationStatus(super().AddJoint(item1)) 5901 5902 return self._Entity.AddJoint(item1._Entity)
5904 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 5905 if isinstance(item1, PanelSegment): 5906 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5907 5908 if isinstance(item1, int): 5909 return CollectionModificationStatus(super().AddPanelSegment(item1)) 5910 5911 return self._Entity.AddPanelSegment(item1._Entity)
5813 def AddPfemProperties(self, pfemPropertyIds: tuple[int]) -> CollectionModificationStatus: 5814 pfemPropertyIdsList = MakeCSharpIntList(pfemPropertyIds) 5815 pfemPropertyIdsEnumerable = IEnumerable(pfemPropertyIdsList) 5816 return CollectionModificationStatus[self._Entity.AddPfemProperties(pfemPropertyIdsEnumerable).ToString()]
5913 def AddZones(self, item1 = None) -> CollectionModificationStatus: 5914 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], Zone): 5915 zonesList = List[_api.Zone]() 5916 if item1 is not None: 5917 for thing in item1: 5918 if thing is not None: 5919 zonesList.Add(thing._Entity) 5920 zonesEnumerable = IEnumerable(zonesList) 5921 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 5922 5923 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5924 return CollectionModificationStatus(super().AddZones(item1)) 5925 5926 return self._Entity.AddZones(item1)
5821 def CreateZone(self, elementIds: tuple[int], name: str = None) -> Zone: 5822 elementIdsList = MakeCSharpIntList(elementIds) 5823 elementIdsEnumerable = IEnumerable(elementIdsList) 5824 result = self._Entity.CreateZone(elementIdsEnumerable, name) 5825 thisClass = type(result).__name__ 5826 givenClass = Zone 5827 for subclass in Zone.__subclasses__(): 5828 if subclass.__name__ == thisClass: 5829 givenClass = subclass 5830 return givenClass(result)
5832 def CreatePanelSegment(self, discreteTechnique: types.DiscreteTechnique, discreteElementLkp: dict[types.DiscreteDefinitionType, list[int]], name: str = None) -> PanelSegment: 5833 discreteElementLkpDict = Dictionary[_types.DiscreteDefinitionType, List[int]]() 5834 for kvp in discreteElementLkp: 5835 discreteElementLkpDict.Add(_types.DiscreteDefinitionType(kvp.value), MakeCSharpIntList(discreteElementLkp[kvp])) 5836 return PanelSegment(self._Entity.CreatePanelSegment(_types.DiscreteTechnique(discreteTechnique.value), discreteElementLkpDict, name))
5928 def Remove(self, item1 = None, item2 = None, item3 = None) -> CollectionModificationStatus: 5929 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int) and isinstance(item2, tuple) and len(item2) > 0 and isinstance(item2[0], int) and isinstance(item3, tuple) and len(item3) > 0 and isinstance(item3[0], int): 5930 zoneIdsList = MakeCSharpIntList(item1) 5931 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5932 jointIdsList = MakeCSharpIntList(item2) 5933 jointIdsEnumerable = IEnumerable(jointIdsList) 5934 panelSegmentIdsList = MakeCSharpIntList(item3) 5935 panelSegmentIdsEnumerable = IEnumerable(panelSegmentIdsList) 5936 return CollectionModificationStatus[self._Entity.Remove(zoneIdsEnumerable, jointIdsEnumerable, panelSegmentIdsEnumerable).ToString()] 5937 5938 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int) and isinstance(item2, tuple) and len(item2) > 0 and isinstance(item2[0], int): 5939 zoneIdsList = MakeCSharpIntList(item1) 5940 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5941 jointIdsList = MakeCSharpIntList(item2) 5942 jointIdsEnumerable = IEnumerable(jointIdsList) 5943 return CollectionModificationStatus[self._Entity.Remove(zoneIdsEnumerable, jointIdsEnumerable).ToString()] 5944 5945 return self._Entity.Remove(item1, item2, item3)
5947 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 5948 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5949 jointIdsList = MakeCSharpIntList(item1) 5950 jointIdsEnumerable = IEnumerable(jointIdsList) 5951 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 5952 5953 if isinstance(item1, JointCol): 5954 return CollectionModificationStatus(super().RemoveJoints(item1)) 5955 5956 return self._Entity.RemoveJoints(item1)
5958 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 5959 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5960 segmentIdsList = MakeCSharpIntList(item1) 5961 segmentIdsEnumerable = IEnumerable(segmentIdsList) 5962 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 5963 5964 if isinstance(item1, PanelSegmentCol): 5965 return CollectionModificationStatus(super().RemovePanelSegments(item1)) 5966 5967 return self._Entity.RemovePanelSegments(item1)
5969 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 5970 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int): 5971 zoneIdsList = MakeCSharpIntList(item1) 5972 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5973 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 5974 5975 if isinstance(item1, ZoneCol): 5976 return CollectionModificationStatus(super().RemoveZones(item1)) 5977 5978 return self._Entity.RemoveZones(item1)
5980 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 5981 if isinstance(item1, int): 5982 return CollectionModificationStatus(super().RemoveJoint(item1)) 5983 5984 if isinstance(item1, Joint): 5985 return CollectionModificationStatus(super().RemoveJoint(item1)) 5986 5987 return self._Entity.RemoveJoint(item1)
5989 def AddZone(self, item1 = None) -> CollectionModificationStatus: 5990 if isinstance(item1, int): 5991 return CollectionModificationStatus(super().AddZone(item1)) 5992 5993 if isinstance(item1, Zone): 5994 return CollectionModificationStatus(super().AddZone(item1)) 5995 5996 return self._Entity.AddZone(item1)
5998 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 5999 if isinstance(item1, int): 6000 return CollectionModificationStatus(super().RemoveZone(item1)) 6001 6002 if isinstance(item1, Zone): 6003 return CollectionModificationStatus(super().RemoveZone(item1)) 6004 6005 return self._Entity.RemoveZone(item1)
6007 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 6008 if isinstance(item1, int): 6009 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 6010 6011 if isinstance(item1, PanelSegment): 6012 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 6013 6014 return self._Entity.RemovePanelSegment(item1)
6017class AnalysisPropertyCol(IdNameEntityCol[AnalysisProperty]): 6018 def __init__(self, analysisPropertyCol: _api.AnalysisPropertyCol): 6019 self._Entity = analysisPropertyCol 6020 self._CollectedClass = AnalysisProperty 6021 6022 @property 6023 def AnalysisPropertyColList(self) -> tuple[AnalysisProperty]: 6024 return tuple([AnalysisProperty(analysisPropertyCol) for analysisPropertyCol in self._Entity]) 6025 6026 def CreateAnalysisProperty(self, type: types.FamilyCategory, name: str = None) -> AnalysisProperty: 6027 return AnalysisProperty(self._Entity.CreateAnalysisProperty(_types.FamilyCategory(type.value), name)) 6028 6029 @overload 6030 def DeleteAnalysisProperty(self, name: str) -> bool: ... 6031 6032 @overload 6033 def DeleteAnalysisProperty(self, id: int) -> bool: ... 6034 6035 @overload 6036 def Get(self, name: str) -> AnalysisProperty: ... 6037 6038 @overload 6039 def Get(self, id: int) -> AnalysisProperty: ... 6040 6041 def DeleteAnalysisProperty(self, item1 = None) -> bool: 6042 if isinstance(item1, str): 6043 return self._Entity.DeleteAnalysisProperty(item1) 6044 6045 if isinstance(item1, int): 6046 return self._Entity.DeleteAnalysisProperty(item1) 6047 6048 return self._Entity.DeleteAnalysisProperty(item1) 6049 6050 def Get(self, item1 = None) -> AnalysisProperty: 6051 if isinstance(item1, str): 6052 return AnalysisProperty(super().Get(item1)) 6053 6054 if isinstance(item1, int): 6055 return AnalysisProperty(super().Get(item1)) 6056 6057 return self._Entity.Get(item1) 6058 6059 def __getitem__(self, index: int): 6060 return self.AnalysisPropertyColList[index] 6061 6062 def __iter__(self): 6063 yield from self.AnalysisPropertyColList 6064 6065 def __len__(self): 6066 return len(self.AnalysisPropertyColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
6069class DesignPropertyCol(IdNameEntityCol[DesignProperty]): 6070 def __init__(self, designPropertyCol: _api.DesignPropertyCol): 6071 self._Entity = designPropertyCol 6072 self._CollectedClass = DesignProperty 6073 6074 @property 6075 def DesignPropertyColList(self) -> tuple[DesignProperty]: 6076 return tuple([DesignProperty(designPropertyCol) for designPropertyCol in self._Entity]) 6077 6078 def CreateDesignProperty(self, familyConcept: types.FamilyConceptUID, materialMode: types.MaterialMode = types.MaterialMode.Any, name: str = None) -> DesignProperty: 6079 result = self._Entity.CreateDesignProperty(_types.FamilyConceptUID(familyConcept.value), _types.MaterialMode(materialMode.value), name) 6080 thisClass = type(result).__name__ 6081 givenClass = DesignProperty 6082 for subclass in DesignProperty.__subclasses__(): 6083 if subclass.__name__ == thisClass: 6084 givenClass = subclass 6085 return givenClass(result) 6086 6087 @overload 6088 def Get(self, name: str) -> DesignProperty: ... 6089 6090 @overload 6091 def Get(self, id: int) -> DesignProperty: ... 6092 6093 def Get(self, item1 = None) -> DesignProperty: 6094 if isinstance(item1, str): 6095 return DesignProperty(super().Get(item1)) 6096 6097 if isinstance(item1, int): 6098 return DesignProperty(super().Get(item1)) 6099 6100 return self._Entity.Get(item1) 6101 6102 def __getitem__(self, index: int): 6103 return self.DesignPropertyColList[index] 6104 6105 def __iter__(self): 6106 yield from self.DesignPropertyColList 6107 6108 def __len__(self): 6109 return len(self.DesignPropertyColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6078 def CreateDesignProperty(self, familyConcept: types.FamilyConceptUID, materialMode: types.MaterialMode = types.MaterialMode.Any, name: str = None) -> DesignProperty: 6079 result = self._Entity.CreateDesignProperty(_types.FamilyConceptUID(familyConcept.value), _types.MaterialMode(materialMode.value), name) 6080 thisClass = type(result).__name__ 6081 givenClass = DesignProperty 6082 for subclass in DesignProperty.__subclasses__(): 6083 if subclass.__name__ == thisClass: 6084 givenClass = subclass 6085 return givenClass(result)
Inherited Members
6112class LoadPropertyCol(IdNameEntityCol[LoadProperty]): 6113 def __init__(self, loadPropertyCol: _api.LoadPropertyCol): 6114 self._Entity = loadPropertyCol 6115 self._CollectedClass = LoadProperty 6116 6117 @property 6118 def LoadPropertyColList(self) -> tuple[LoadProperty]: 6119 return tuple([LoadProperty(loadPropertyCol) for loadPropertyCol in self._Entity]) 6120 6121 def CreateLoadProperty(self, loadPropertyType: types.LoadPropertyType, category: types.FamilyCategory, name: str = None) -> LoadProperty: 6122 result = self._Entity.CreateLoadProperty(_types.LoadPropertyType(loadPropertyType.value), _types.FamilyCategory(category.value), name) 6123 thisClass = type(result).__name__ 6124 givenClass = LoadProperty 6125 for subclass in LoadProperty.__subclasses__(): 6126 if subclass.__name__ == thisClass: 6127 givenClass = subclass 6128 return givenClass(result) 6129 6130 @overload 6131 def DeleteLoadProperty(self, id: int) -> bool: ... 6132 6133 @overload 6134 def DeleteLoadProperty(self, name: str) -> bool: ... 6135 6136 @overload 6137 def Get(self, name: str) -> LoadProperty: ... 6138 6139 @overload 6140 def Get(self, id: int) -> LoadProperty: ... 6141 6142 def DeleteLoadProperty(self, item1 = None) -> bool: 6143 if isinstance(item1, int): 6144 return self._Entity.DeleteLoadProperty(item1) 6145 6146 if isinstance(item1, str): 6147 return self._Entity.DeleteLoadProperty(item1) 6148 6149 return self._Entity.DeleteLoadProperty(item1) 6150 6151 def Get(self, item1 = None) -> LoadProperty: 6152 if isinstance(item1, str): 6153 return LoadProperty(super().Get(item1)) 6154 6155 if isinstance(item1, int): 6156 return LoadProperty(super().Get(item1)) 6157 6158 return self._Entity.Get(item1) 6159 6160 def __getitem__(self, index: int): 6161 return self.LoadPropertyColList[index] 6162 6163 def __iter__(self): 6164 yield from self.LoadPropertyColList 6165 6166 def __len__(self): 6167 return len(self.LoadPropertyColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6121 def CreateLoadProperty(self, loadPropertyType: types.LoadPropertyType, category: types.FamilyCategory, name: str = None) -> LoadProperty: 6122 result = self._Entity.CreateLoadProperty(_types.LoadPropertyType(loadPropertyType.value), _types.FamilyCategory(category.value), name) 6123 thisClass = type(result).__name__ 6124 givenClass = LoadProperty 6125 for subclass in LoadProperty.__subclasses__(): 6126 if subclass.__name__ == thisClass: 6127 givenClass = subclass 6128 return givenClass(result)
Inherited Members
6170class DesignLoadCol(IdNameEntityCol[DesignLoad]): 6171 def __init__(self, designLoadCol: _api.DesignLoadCol): 6172 self._Entity = designLoadCol 6173 self._CollectedClass = DesignLoad 6174 6175 @property 6176 def DesignLoadColList(self) -> tuple[DesignLoad]: 6177 return tuple([DesignLoad(designLoadCol) for designLoadCol in self._Entity]) 6178 6179 @overload 6180 def Get(self, name: str) -> DesignLoad: ... 6181 6182 @overload 6183 def Get(self, id: int) -> DesignLoad: ... 6184 6185 def Get(self, item1 = None) -> DesignLoad: 6186 if isinstance(item1, str): 6187 return DesignLoad(super().Get(item1)) 6188 6189 if isinstance(item1, int): 6190 return DesignLoad(super().Get(item1)) 6191 6192 return self._Entity.Get(item1) 6193 6194 def __getitem__(self, index: int): 6195 return self.DesignLoadColList[index] 6196 6197 def __iter__(self): 6198 yield from self.DesignLoadColList 6199 6200 def __len__(self): 6201 return len(self.DesignLoadColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
6204class DiscreteFieldCol(IdNameEntityCol[DiscreteField]): 6205 def __init__(self, discreteFieldCol: _api.DiscreteFieldCol): 6206 self._Entity = discreteFieldCol 6207 self._CollectedClass = DiscreteField 6208 6209 @property 6210 def DiscreteFieldColList(self) -> tuple[DiscreteField]: 6211 return tuple([DiscreteField(discreteFieldCol) for discreteFieldCol in self._Entity]) 6212 6213 def Create(self, entityType: types.DiscreteFieldPhysicalEntityType, dataType: types.DiscreteFieldDataType, name: str = None) -> DiscreteField: 6214 return DiscreteField(self._Entity.Create(_types.DiscreteFieldPhysicalEntityType(entityType.value), _types.DiscreteFieldDataType(dataType.value), name)) 6215 6216 def CreateFromVCP(self, filepath: str) -> list[DiscreteField]: 6217 return [DiscreteField(discreteField) for discreteField in self._Entity.CreateFromVCP(filepath)] 6218 6219 def Delete(self, id: int) -> CollectionModificationStatus: 6220 return CollectionModificationStatus[self._Entity.Delete(id).ToString()] 6221 6222 def CreateByPointMapToElements(self, elementIds: list[int], discreteFieldIds: list[int], suffix: str = None, tolerance: float = None) -> list[DiscreteField]: 6223 elementIdsList = MakeCSharpIntList(elementIds) 6224 discreteFieldIdsList = MakeCSharpIntList(discreteFieldIds) 6225 return [DiscreteField(discreteField) for discreteField in self._Entity.CreateByPointMapToElements(elementIdsList, discreteFieldIdsList, suffix, tolerance)] 6226 6227 @overload 6228 def Get(self, name: str) -> DiscreteField: ... 6229 6230 @overload 6231 def Get(self, id: int) -> DiscreteField: ... 6232 6233 def Get(self, item1 = None) -> DiscreteField: 6234 if isinstance(item1, str): 6235 return DiscreteField(super().Get(item1)) 6236 6237 if isinstance(item1, int): 6238 return DiscreteField(super().Get(item1)) 6239 6240 return self._Entity.Get(item1) 6241 6242 def __getitem__(self, index: int): 6243 return self.DiscreteFieldColList[index] 6244 6245 def __iter__(self): 6246 yield from self.DiscreteFieldColList 6247 6248 def __len__(self): 6249 return len(self.DiscreteFieldColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6213 def Create(self, entityType: types.DiscreteFieldPhysicalEntityType, dataType: types.DiscreteFieldDataType, name: str = None) -> DiscreteField: 6214 return DiscreteField(self._Entity.Create(_types.DiscreteFieldPhysicalEntityType(entityType.value), _types.DiscreteFieldDataType(dataType.value), name))
6222 def CreateByPointMapToElements(self, elementIds: list[int], discreteFieldIds: list[int], suffix: str = None, tolerance: float = None) -> list[DiscreteField]: 6223 elementIdsList = MakeCSharpIntList(elementIds) 6224 discreteFieldIdsList = MakeCSharpIntList(discreteFieldIds) 6225 return [DiscreteField(discreteField) for discreteField in self._Entity.CreateByPointMapToElements(elementIdsList, discreteFieldIdsList, suffix, tolerance)]
Inherited Members
6252class ZoneJointContainerCol(IdNameEntityCol, Generic[T]): 6253 def __init__(self, zoneJointContainerCol: _api.ZoneJointContainerCol): 6254 self._Entity = zoneJointContainerCol 6255 self._CollectedClass = T 6256 6257 @property 6258 def ZoneJointContainerColList(self) -> tuple[T]: 6259 if self._Entity.Count() <= 0: 6260 return () 6261 thisClass = type(self._Entity._items[0]).__name__ 6262 givenClass = T 6263 for subclass in T.__subclasses__(): 6264 if subclass.__name__ == thisClass: 6265 givenClass = subclass 6266 return tuple([givenClass(zoneJointContainerCol) for zoneJointContainerCol in self._Entity]) 6267 6268 @abstractmethod 6269 def Create(self, name: str) -> T: 6270 return self._Entity.Create(name) 6271 6272 @overload 6273 def Get(self, name: str) -> T: ... 6274 6275 @overload 6276 def Get(self, id: int) -> T: ... 6277 6278 def Get(self, item1 = None) -> T: 6279 if isinstance(item1, str): 6280 return super().Get(item1) 6281 6282 if isinstance(item1, int): 6283 return super().Get(item1) 6284 6285 return self._Entity.Get(item1) 6286 6287 def __getitem__(self, index: int): 6288 return self.ZoneJointContainerColList[index] 6289 6290 def __iter__(self): 6291 yield from self.ZoneJointContainerColList 6292 6293 def __len__(self): 6294 return len(self.ZoneJointContainerColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6257 @property 6258 def ZoneJointContainerColList(self) -> tuple[T]: 6259 if self._Entity.Count() <= 0: 6260 return () 6261 thisClass = type(self._Entity._items[0]).__name__ 6262 givenClass = T 6263 for subclass in T.__subclasses__(): 6264 if subclass.__name__ == thisClass: 6265 givenClass = subclass 6266 return tuple([givenClass(zoneJointContainerCol) for zoneJointContainerCol in self._Entity])
Inherited Members
6297class RundeckCol(IdEntityCol[Rundeck]): 6298 def __init__(self, rundeckCol: _api.RundeckCol): 6299 self._Entity = rundeckCol 6300 self._CollectedClass = Rundeck 6301 6302 @property 6303 def RundeckColList(self) -> tuple[Rundeck]: 6304 return tuple([Rundeck(rundeckCol) for rundeckCol in self._Entity]) 6305 6306 def AddRundeck(self, inputPath: str, resultPath: str = None) -> Rundeck: 6307 return Rundeck(self._Entity.AddRundeck(inputPath, resultPath)) 6308 6309 def ReassignPrimary(self, id: int) -> RundeckUpdateStatus: 6310 return RundeckUpdateStatus[self._Entity.ReassignPrimary(id).ToString()] 6311 6312 def RemoveRundeck(self, id: int) -> RundeckRemoveStatus: 6313 return RundeckRemoveStatus[self._Entity.RemoveRundeck(id).ToString()] 6314 6315 def UpdateAllRundecks(self, newPaths: list[RundeckPathPair]) -> RundeckBulkUpdateStatus: 6316 newPathsList = List[_api.RundeckPathPair]() 6317 if newPaths is not None: 6318 for thing in newPaths: 6319 if thing is not None: 6320 newPathsList.Add(thing._Entity) 6321 return RundeckBulkUpdateStatus[self._Entity.UpdateAllRundecks(newPathsList).ToString()] 6322 6323 def GetRundeckPathSetters(self) -> list[RundeckPathPair]: 6324 ''' 6325 Get RundeckPathSetters to be edited and input to UpdateAllRundecks. 6326 ''' 6327 return [RundeckPathPair(rundeckPathPair) for rundeckPathPair in self._Entity.GetRundeckPathSetters()] 6328 6329 def ReplaceStringInAllPaths(self, stringToReplace: str, newString: str) -> RundeckBulkUpdateStatus: 6330 return RundeckBulkUpdateStatus[self._Entity.ReplaceStringInAllPaths(stringToReplace, newString).ToString()] 6331 6332 def __getitem__(self, index: int): 6333 return self.RundeckColList[index] 6334 6335 def __iter__(self): 6336 yield from self.RundeckColList 6337 6338 def __len__(self): 6339 return len(self.RundeckColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6315 def UpdateAllRundecks(self, newPaths: list[RundeckPathPair]) -> RundeckBulkUpdateStatus: 6316 newPathsList = List[_api.RundeckPathPair]() 6317 if newPaths is not None: 6318 for thing in newPaths: 6319 if thing is not None: 6320 newPathsList.Add(thing._Entity) 6321 return RundeckBulkUpdateStatus[self._Entity.UpdateAllRundecks(newPathsList).ToString()]
6323 def GetRundeckPathSetters(self) -> list[RundeckPathPair]: 6324 ''' 6325 Get RundeckPathSetters to be edited and input to UpdateAllRundecks. 6326 ''' 6327 return [RundeckPathPair(rundeckPathPair) for rundeckPathPair in self._Entity.GetRundeckPathSetters()]
Get RundeckPathSetters to be edited and input to UpdateAllRundecks.
Inherited Members
6342class SectionCutCol(IdNameEntityCol[SectionCut]): 6343 def __init__(self, sectionCutCol: _api.SectionCutCol): 6344 self._Entity = sectionCutCol 6345 self._CollectedClass = SectionCut 6346 6347 @property 6348 def SectionCutColList(self) -> tuple[SectionCut]: 6349 return tuple([SectionCut(sectionCutCol) for sectionCutCol in self._Entity]) 6350 6351 def Create(self, origin: Vector3d, normal: Vector3d, horizontal: Vector3d, name: str = None) -> SectionCut: 6352 return SectionCut(self._Entity.Create(origin._Entity, normal._Entity, horizontal._Entity, name)) 6353 6354 def Delete(self, id: int) -> CollectionModificationStatus: 6355 return CollectionModificationStatus[self._Entity.Delete(id).ToString()] 6356 6357 @overload 6358 def Get(self, name: str) -> SectionCut: ... 6359 6360 @overload 6361 def Get(self, id: int) -> SectionCut: ... 6362 6363 def Get(self, item1 = None) -> SectionCut: 6364 if isinstance(item1, str): 6365 return SectionCut(super().Get(item1)) 6366 6367 if isinstance(item1, int): 6368 return SectionCut(super().Get(item1)) 6369 6370 return self._Entity.Get(item1) 6371 6372 def __getitem__(self, index: int): 6373 return self.SectionCutColList[index] 6374 6375 def __iter__(self): 6376 yield from self.SectionCutColList 6377 6378 def __len__(self): 6379 return len(self.SectionCutColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
6382class SetCol(ZoneJointContainerCol[Set]): 6383 def __init__(self, setCol: _api.SetCol): 6384 self._Entity = setCol 6385 self._CollectedClass = Set 6386 6387 @property 6388 def SetColList(self) -> tuple[Set]: 6389 return tuple([Set(setCol) for setCol in self._Entity]) 6390 6391 def Create(self, name: str = None) -> Set: 6392 return Set(self._Entity.Create(name)) 6393 6394 @overload 6395 def Get(self, name: str) -> Set: ... 6396 6397 @overload 6398 def Get(self, id: int) -> Set: ... 6399 6400 def Get(self, item1 = None) -> Set: 6401 if isinstance(item1, str): 6402 return Set(super().Get(item1)) 6403 6404 if isinstance(item1, int): 6405 return Set(super().Get(item1)) 6406 6407 return self._Entity.Get(item1) 6408 6409 def __getitem__(self, index: int): 6410 return self.SetColList[index] 6411 6412 def __iter__(self): 6413 yield from self.SetColList 6414 6415 def __len__(self): 6416 return len(self.SetColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6419class StructureCol(ZoneJointContainerCol[Structure]): 6420 def __init__(self, structureCol: _api.StructureCol): 6421 self._Entity = structureCol 6422 self._CollectedClass = Structure 6423 6424 @property 6425 def StructureColList(self) -> tuple[Structure]: 6426 return tuple([Structure(structureCol) for structureCol in self._Entity]) 6427 6428 def Create(self, name: str = None) -> Structure: 6429 return Structure(self._Entity.Create(name)) 6430 6431 @overload 6432 def DeleteStructure(self, structure: Structure) -> bool: ... 6433 6434 @overload 6435 def DeleteStructure(self, name: str) -> bool: ... 6436 6437 @overload 6438 def DeleteStructure(self, id: int) -> bool: ... 6439 6440 @overload 6441 def Get(self, name: str) -> Structure: ... 6442 6443 @overload 6444 def Get(self, id: int) -> Structure: ... 6445 6446 def DeleteStructure(self, item1 = None) -> bool: 6447 if isinstance(item1, Structure): 6448 return self._Entity.DeleteStructure(item1._Entity) 6449 6450 if isinstance(item1, str): 6451 return self._Entity.DeleteStructure(item1) 6452 6453 if isinstance(item1, int): 6454 return self._Entity.DeleteStructure(item1) 6455 6456 return self._Entity.DeleteStructure(item1._Entity) 6457 6458 def Get(self, item1 = None) -> Structure: 6459 if isinstance(item1, str): 6460 return Structure(super().Get(item1)) 6461 6462 if isinstance(item1, int): 6463 return Structure(super().Get(item1)) 6464 6465 return self._Entity.Get(item1) 6466 6467 def __getitem__(self, index: int): 6468 return self.StructureColList[index] 6469 6470 def __iter__(self): 6471 yield from self.StructureColList 6472 6473 def __len__(self): 6474 return len(self.StructureColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6446 def DeleteStructure(self, item1 = None) -> bool: 6447 if isinstance(item1, Structure): 6448 return self._Entity.DeleteStructure(item1._Entity) 6449 6450 if isinstance(item1, str): 6451 return self._Entity.DeleteStructure(item1) 6452 6453 if isinstance(item1, int): 6454 return self._Entity.DeleteStructure(item1) 6455 6456 return self._Entity.DeleteStructure(item1._Entity)
6477class Project: 6478 ''' 6479 Represents a HyperX project within a database. 6480 ''' 6481 def __init__(self, project: _api.Project): 6482 self._Entity = project 6483 6484 @property 6485 def HyperFea(self) -> HyperFea: 6486 result = self._Entity.HyperFea 6487 return HyperFea(result) if result is not None else None 6488 6489 @property 6490 def WorkingFolder(self) -> str: 6491 return self._Entity.WorkingFolder 6492 6493 @property 6494 def FemDataSet(self) -> FemDataSet: 6495 result = self._Entity.FemDataSet 6496 return FemDataSet(result) if result is not None else None 6497 6498 @property 6499 def Beams(self) -> ZoneCol: 6500 result = self._Entity.Beams 6501 return ZoneCol(result) if result is not None else None 6502 6503 @property 6504 def Id(self) -> int: 6505 return self._Entity.Id 6506 6507 @property 6508 def Joints(self) -> JointCol: 6509 result = self._Entity.Joints 6510 return JointCol(result) if result is not None else None 6511 6512 @property 6513 def Name(self) -> str: 6514 return self._Entity.Name 6515 6516 @property 6517 def Panels(self) -> ZoneCol: 6518 result = self._Entity.Panels 6519 return ZoneCol(result) if result is not None else None 6520 6521 @property 6522 def Rundecks(self) -> RundeckCol: 6523 result = self._Entity.Rundecks 6524 return RundeckCol(result) if result is not None else None 6525 6526 @property 6527 def Sets(self) -> SetCol: 6528 result = self._Entity.Sets 6529 return SetCol(result) if result is not None else None 6530 6531 @property 6532 def Structures(self) -> StructureCol: 6533 result = self._Entity.Structures 6534 return StructureCol(result) if result is not None else None 6535 6536 @property 6537 def Zones(self) -> ZoneCol: 6538 result = self._Entity.Zones 6539 return ZoneCol(result) if result is not None else None 6540 6541 @property 6542 def PanelSegments(self) -> PanelSegmentCol: 6543 result = self._Entity.PanelSegments 6544 return PanelSegmentCol(result) if result is not None else None 6545 6546 @property 6547 def SectionCuts(self) -> SectionCutCol: 6548 result = self._Entity.SectionCuts 6549 return SectionCutCol(result) if result is not None else None 6550 6551 @property 6552 def DesignLoads(self) -> DesignLoadCol: 6553 result = self._Entity.DesignLoads 6554 return DesignLoadCol(result) if result is not None else None 6555 6556 @property 6557 def DiscreteFieldTables(self) -> DiscreteFieldCol: 6558 result = self._Entity.DiscreteFieldTables 6559 return DiscreteFieldCol(result) if result is not None else None 6560 6561 @property 6562 def AnalysisProperties(self) -> AnalysisPropertyCol: 6563 result = self._Entity.AnalysisProperties 6564 return AnalysisPropertyCol(result) if result is not None else None 6565 6566 @property 6567 def DesignProperties(self) -> DesignPropertyCol: 6568 result = self._Entity.DesignProperties 6569 return DesignPropertyCol(result) if result is not None else None 6570 6571 @property 6572 def LoadProperties(self) -> LoadPropertyCol: 6573 result = self._Entity.LoadProperties 6574 return LoadPropertyCol(result) if result is not None else None 6575 6576 @property 6577 def FemFormat(self) -> types.ProjectModelFormat: 6578 return types.ProjectModelFormat[self._Entity.FemFormat.ToString()] 6579 6580 def Upload(self, uploadSetName: str, company: str, program: str, tags: list[str], notes: str, zoneIds: set[int], jointIds: set[int]) -> bool: 6581 tagsList = List[str]() 6582 if tags is not None: 6583 for thing in tags: 6584 if thing is not None: 6585 tagsList.Add(thing) 6586 zoneIdsSet = HashSet[int]() 6587 if zoneIds is not None: 6588 for thing in zoneIds: 6589 if thing is not None: 6590 zoneIdsSet.Add(thing) 6591 jointIdsSet = HashSet[int]() 6592 if jointIds is not None: 6593 for thing in jointIds: 6594 if thing is not None: 6595 jointIdsSet.Add(thing) 6596 return self._Entity.Upload(uploadSetName, company, program, tagsList, notes, zoneIdsSet, jointIdsSet) 6597 6598 def GetDashboardCompanies(self) -> list[str]: 6599 ''' 6600 This method fetches an array of Dashboard company names that are available to the user who is currently logged in. The URL and authentication token are taken from the last 6601 Dashboard login made through HyperX. 6602 ''' 6603 return list[str](self._Entity.GetDashboardCompanies()) 6604 6605 def GetDashboardPrograms(self, companyName: str) -> list[str]: 6606 return list[str](self._Entity.GetDashboardPrograms(companyName)) 6607 6608 def GetDashboardTags(self, companyName: str) -> list[str]: 6609 return list[str](self._Entity.GetDashboardTags(companyName)) 6610 6611 def GenerateSolverSizingInputFile(self, inputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None) -> str: 6612 zonesSet = HashSet[int]() 6613 if zones is not None: 6614 for thing in zones: 6615 if thing is not None: 6616 zonesSet.Add(thing) 6617 sectionCutsSet = HashSet[int]() 6618 if sectionCuts is not None: 6619 for thing in sectionCuts: 6620 if thing is not None: 6621 sectionCutsSet.Add(thing) 6622 panelSegmentsSet = HashSet[int]() 6623 if panelSegments is not None: 6624 for thing in panelSegments: 6625 if thing is not None: 6626 panelSegmentsSet.Add(thing) 6627 return self._Entity.GenerateSolverSizingInputFile(inputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet) 6628 6629 def GenerateSolverAnalysisInputFile(self, inputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None) -> str: 6630 zonesSet = HashSet[int]() 6631 if zones is not None: 6632 for thing in zones: 6633 if thing is not None: 6634 zonesSet.Add(thing) 6635 sectionCutsSet = HashSet[int]() 6636 if sectionCuts is not None: 6637 for thing in sectionCuts: 6638 if thing is not None: 6639 sectionCutsSet.Add(thing) 6640 panelSegmentsSet = HashSet[int]() 6641 if panelSegments is not None: 6642 for thing in panelSegments: 6643 if thing is not None: 6644 panelSegmentsSet.Add(thing) 6645 return self._Entity.GenerateSolverAnalysisInputFile(inputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet) 6646 6647 def FullRunSolverSizing(self, inputFile: str = None, outputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None, nThreads: int = None) -> bool: 6648 zonesSet = HashSet[int]() 6649 if zones is not None: 6650 for thing in zones: 6651 if thing is not None: 6652 zonesSet.Add(thing) 6653 sectionCutsSet = HashSet[int]() 6654 if sectionCuts is not None: 6655 for thing in sectionCuts: 6656 if thing is not None: 6657 sectionCutsSet.Add(thing) 6658 panelSegmentsSet = HashSet[int]() 6659 if panelSegments is not None: 6660 for thing in panelSegments: 6661 if thing is not None: 6662 panelSegmentsSet.Add(thing) 6663 return self._Entity.FullRunSolverSizing(inputFile, outputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet, nThreads) 6664 6665 def FullRunSolverAnalysis(self, inputFile: str = None, outputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None, nThreads: int = None) -> bool: 6666 zonesSet = HashSet[int]() 6667 if zones is not None: 6668 for thing in zones: 6669 if thing is not None: 6670 zonesSet.Add(thing) 6671 sectionCutsSet = HashSet[int]() 6672 if sectionCuts is not None: 6673 for thing in sectionCuts: 6674 if thing is not None: 6675 sectionCutsSet.Add(thing) 6676 panelSegmentsSet = HashSet[int]() 6677 if panelSegments is not None: 6678 for thing in panelSegments: 6679 if thing is not None: 6680 panelSegmentsSet.Add(thing) 6681 return self._Entity.FullRunSolverAnalysis(inputFile, outputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet, nThreads) 6682 6683 def RunSolver(self, inputFile: str, outputFile: str = None, nThreads: int = None) -> bool: 6684 return self._Entity.RunSolver(inputFile, outputFile, nThreads) 6685 6686 def Dispose(self) -> None: 6687 return self._Entity.Dispose() 6688 6689 def ImportFem(self) -> None: 6690 return self._Entity.ImportFem() 6691 6692 def ImportFeaResults(self, alwaysImport: bool = False) -> str: 6693 return self._Entity.ImportFeaResults(alwaysImport) 6694 6695 def SetFemFormat(self, femFormat: types.ProjectModelFormat) -> None: 6696 return self._Entity.SetFemFormat(_types.ProjectModelFormat(femFormat.value)) 6697 6698 def SetFemUnits(self, femForceId: DbForceUnit, femLengthId: DbLengthUnit, femMassId: DbMassUnit, femTemperatureId: DbTemperatureUnit) -> SetUnitsStatus: 6699 return SetUnitsStatus[self._Entity.SetFemUnits(_api.DbForceUnit(femForceId.value), _api.DbLengthUnit(femLengthId.value), _api.DbMassUnit(femMassId.value), _api.DbTemperatureUnit(femTemperatureId.value)).ToString()] 6700 6701 def SizeJoints(self, joints: list[Joint] = None) -> tuple[bool, str, set[int]]: 6702 jointsList = List[_api.Joint]() 6703 if joints is not None: 6704 for thing in joints: 6705 if thing is not None: 6706 jointsList.Add(thing._Entity) 6707 result = self._Entity.SizeJoints(joints if joints is None else jointsList) 6708 return tuple([result.Item1, result.Item2, result.Item3]) 6709 6710 @overload 6711 def AnalyzeZones(self, zones: list[Zone] = None) -> types.SimpleStatus: ... 6712 6713 @overload 6714 def AnalyzeZones(self, zoneIds: list[int]) -> types.SimpleStatus: ... 6715 6716 @overload 6717 def SizeZones(self, zones: list[Zone] = None) -> types.SimpleStatus: ... 6718 6719 @overload 6720 def SizeZones(self, zoneIds: list[int]) -> types.SimpleStatus: ... 6721 6722 def CreateNonFeaZone(self, category: types.FamilyCategory, name: str = None) -> Zone: 6723 result = self._Entity.CreateNonFeaZone(_types.FamilyCategory(category.value), name) 6724 thisClass = type(result).__name__ 6725 givenClass = Zone 6726 for subclass in Zone.__subclasses__(): 6727 if subclass.__name__ == thisClass: 6728 givenClass = subclass 6729 return givenClass(result) 6730 6731 def ReturnToUnusedFem(self, zoneNumbers: list[int] = None, jointIds: set[int] = None) -> None: 6732 zoneNumbersList = MakeCSharpIntList(zoneNumbers) 6733 jointIdsSet = HashSet[int]() 6734 if jointIds is not None: 6735 for thing in jointIds: 6736 if thing is not None: 6737 jointIdsSet.Add(thing) 6738 return self._Entity.ReturnToUnusedFem(zoneNumbers if zoneNumbers is None else zoneNumbersList, jointIds if jointIds is None else jointIdsSet) 6739 6740 def UnimportFemAsync(self) -> Task: 6741 return Task(self._Entity.UnimportFemAsync()) 6742 6743 def ExportFem(self, destinationFolder: str) -> None: 6744 return self._Entity.ExportFem(destinationFolder) 6745 6746 def ImportCad(self, filePath: str) -> None: 6747 return self._Entity.ImportCad(filePath) 6748 6749 @overload 6750 def ExportCad(self, filePath: str) -> None: ... 6751 6752 @overload 6753 def ExportCad(self, cadIds: tuple[int], filePath: str) -> None: ... 6754 6755 def RegeneratePfem(self) -> None: 6756 ''' 6757 Regenerates and displays the preview FEM. If running a script outside of the Script Runner, 6758 do not call this method 6759 ''' 6760 return self._Entity.RegeneratePfem() 6761 6762 def AnalyzeZones(self, item1 = None) -> types.SimpleStatus: 6763 if isinstance(item1, list) and len(item1) > 0 and isinstance(item1[0], Zone): 6764 zonesList = List[_api.Zone]() 6765 if item1 is not None: 6766 for thing in item1: 6767 if thing is not None: 6768 zonesList.Add(thing._Entity) 6769 return types.SimpleStatus(self._Entity.AnalyzeZones(item1 if item1 is None else zonesList)) 6770 6771 if isinstance(item1, list) and len(item1) > 0 and isinstance(item1[0], int): 6772 zoneIdsList = MakeCSharpIntList(item1) 6773 return types.SimpleStatus(self._Entity.AnalyzeZones(zoneIdsList)) 6774 6775 return self._Entity.AnalyzeZones(item1) 6776 6777 def SizeZones(self, item1 = None) -> types.SimpleStatus: 6778 if isinstance(item1, list) and len(item1) > 0 and isinstance(item1[0], Zone): 6779 zonesList = List[_api.Zone]() 6780 if item1 is not None: 6781 for thing in item1: 6782 if thing is not None: 6783 zonesList.Add(thing._Entity) 6784 return types.SimpleStatus(self._Entity.SizeZones(item1 if item1 is None else zonesList)) 6785 6786 if isinstance(item1, list) and len(item1) > 0 and isinstance(item1[0], int): 6787 zoneIdsList = MakeCSharpIntList(item1) 6788 return types.SimpleStatus(self._Entity.SizeZones(zoneIdsList)) 6789 6790 return self._Entity.SizeZones(item1) 6791 6792 def ExportCad(self, item1 = None, item2 = None) -> None: 6793 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int) and isinstance(item2, str): 6794 cadIdsList = MakeCSharpIntList(item1) 6795 cadIdsEnumerable = IEnumerable(cadIdsList) 6796 return self._Entity.ExportCad(cadIdsEnumerable, item2) 6797 6798 if isinstance(item1, str): 6799 return self._Entity.ExportCad(item1) 6800 6801 return self._Entity.ExportCad(item1, item2)
Represents a HyperX project within a database.
6580 def Upload(self, uploadSetName: str, company: str, program: str, tags: list[str], notes: str, zoneIds: set[int], jointIds: set[int]) -> bool: 6581 tagsList = List[str]() 6582 if tags is not None: 6583 for thing in tags: 6584 if thing is not None: 6585 tagsList.Add(thing) 6586 zoneIdsSet = HashSet[int]() 6587 if zoneIds is not None: 6588 for thing in zoneIds: 6589 if thing is not None: 6590 zoneIdsSet.Add(thing) 6591 jointIdsSet = HashSet[int]() 6592 if jointIds is not None: 6593 for thing in jointIds: 6594 if thing is not None: 6595 jointIdsSet.Add(thing) 6596 return self._Entity.Upload(uploadSetName, company, program, tagsList, notes, zoneIdsSet, jointIdsSet)
6598 def GetDashboardCompanies(self) -> list[str]: 6599 ''' 6600 This method fetches an array of Dashboard company names that are available to the user who is currently logged in. The URL and authentication token are taken from the last 6601 Dashboard login made through HyperX. 6602 ''' 6603 return list[str](self._Entity.GetDashboardCompanies())
This method fetches an array of Dashboard company names that are available to the user who is currently logged in. The URL and authentication token are taken from the last Dashboard login made through HyperX.
6611 def GenerateSolverSizingInputFile(self, inputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None) -> str: 6612 zonesSet = HashSet[int]() 6613 if zones is not None: 6614 for thing in zones: 6615 if thing is not None: 6616 zonesSet.Add(thing) 6617 sectionCutsSet = HashSet[int]() 6618 if sectionCuts is not None: 6619 for thing in sectionCuts: 6620 if thing is not None: 6621 sectionCutsSet.Add(thing) 6622 panelSegmentsSet = HashSet[int]() 6623 if panelSegments is not None: 6624 for thing in panelSegments: 6625 if thing is not None: 6626 panelSegmentsSet.Add(thing) 6627 return self._Entity.GenerateSolverSizingInputFile(inputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet)
6629 def GenerateSolverAnalysisInputFile(self, inputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None) -> str: 6630 zonesSet = HashSet[int]() 6631 if zones is not None: 6632 for thing in zones: 6633 if thing is not None: 6634 zonesSet.Add(thing) 6635 sectionCutsSet = HashSet[int]() 6636 if sectionCuts is not None: 6637 for thing in sectionCuts: 6638 if thing is not None: 6639 sectionCutsSet.Add(thing) 6640 panelSegmentsSet = HashSet[int]() 6641 if panelSegments is not None: 6642 for thing in panelSegments: 6643 if thing is not None: 6644 panelSegmentsSet.Add(thing) 6645 return self._Entity.GenerateSolverAnalysisInputFile(inputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet)
6647 def FullRunSolverSizing(self, inputFile: str = None, outputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None, nThreads: int = None) -> bool: 6648 zonesSet = HashSet[int]() 6649 if zones is not None: 6650 for thing in zones: 6651 if thing is not None: 6652 zonesSet.Add(thing) 6653 sectionCutsSet = HashSet[int]() 6654 if sectionCuts is not None: 6655 for thing in sectionCuts: 6656 if thing is not None: 6657 sectionCutsSet.Add(thing) 6658 panelSegmentsSet = HashSet[int]() 6659 if panelSegments is not None: 6660 for thing in panelSegments: 6661 if thing is not None: 6662 panelSegmentsSet.Add(thing) 6663 return self._Entity.FullRunSolverSizing(inputFile, outputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet, nThreads)
6665 def FullRunSolverAnalysis(self, inputFile: str = None, outputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None, nThreads: int = None) -> bool: 6666 zonesSet = HashSet[int]() 6667 if zones is not None: 6668 for thing in zones: 6669 if thing is not None: 6670 zonesSet.Add(thing) 6671 sectionCutsSet = HashSet[int]() 6672 if sectionCuts is not None: 6673 for thing in sectionCuts: 6674 if thing is not None: 6675 sectionCutsSet.Add(thing) 6676 panelSegmentsSet = HashSet[int]() 6677 if panelSegments is not None: 6678 for thing in panelSegments: 6679 if thing is not None: 6680 panelSegmentsSet.Add(thing) 6681 return self._Entity.FullRunSolverAnalysis(inputFile, outputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet, nThreads)
6698 def SetFemUnits(self, femForceId: DbForceUnit, femLengthId: DbLengthUnit, femMassId: DbMassUnit, femTemperatureId: DbTemperatureUnit) -> SetUnitsStatus: 6699 return SetUnitsStatus[self._Entity.SetFemUnits(_api.DbForceUnit(femForceId.value), _api.DbLengthUnit(femLengthId.value), _api.DbMassUnit(femMassId.value), _api.DbTemperatureUnit(femTemperatureId.value)).ToString()]
6701 def SizeJoints(self, joints: list[Joint] = None) -> tuple[bool, str, set[int]]: 6702 jointsList = List[_api.Joint]() 6703 if joints is not None: 6704 for thing in joints: 6705 if thing is not None: 6706 jointsList.Add(thing._Entity) 6707 result = self._Entity.SizeJoints(joints if joints is None else jointsList) 6708 return tuple([result.Item1, result.Item2, result.Item3])
6762 def AnalyzeZones(self, item1 = None) -> types.SimpleStatus: 6763 if isinstance(item1, list) and len(item1) > 0 and isinstance(item1[0], Zone): 6764 zonesList = List[_api.Zone]() 6765 if item1 is not None: 6766 for thing in item1: 6767 if thing is not None: 6768 zonesList.Add(thing._Entity) 6769 return types.SimpleStatus(self._Entity.AnalyzeZones(item1 if item1 is None else zonesList)) 6770 6771 if isinstance(item1, list) and len(item1) > 0 and isinstance(item1[0], int): 6772 zoneIdsList = MakeCSharpIntList(item1) 6773 return types.SimpleStatus(self._Entity.AnalyzeZones(zoneIdsList)) 6774 6775 return self._Entity.AnalyzeZones(item1)
6777 def SizeZones(self, item1 = None) -> types.SimpleStatus: 6778 if isinstance(item1, list) and len(item1) > 0 and isinstance(item1[0], Zone): 6779 zonesList = List[_api.Zone]() 6780 if item1 is not None: 6781 for thing in item1: 6782 if thing is not None: 6783 zonesList.Add(thing._Entity) 6784 return types.SimpleStatus(self._Entity.SizeZones(item1 if item1 is None else zonesList)) 6785 6786 if isinstance(item1, list) and len(item1) > 0 and isinstance(item1[0], int): 6787 zoneIdsList = MakeCSharpIntList(item1) 6788 return types.SimpleStatus(self._Entity.SizeZones(zoneIdsList)) 6789 6790 return self._Entity.SizeZones(item1)
6722 def CreateNonFeaZone(self, category: types.FamilyCategory, name: str = None) -> Zone: 6723 result = self._Entity.CreateNonFeaZone(_types.FamilyCategory(category.value), name) 6724 thisClass = type(result).__name__ 6725 givenClass = Zone 6726 for subclass in Zone.__subclasses__(): 6727 if subclass.__name__ == thisClass: 6728 givenClass = subclass 6729 return givenClass(result)
6731 def ReturnToUnusedFem(self, zoneNumbers: list[int] = None, jointIds: set[int] = None) -> None: 6732 zoneNumbersList = MakeCSharpIntList(zoneNumbers) 6733 jointIdsSet = HashSet[int]() 6734 if jointIds is not None: 6735 for thing in jointIds: 6736 if thing is not None: 6737 jointIdsSet.Add(thing) 6738 return self._Entity.ReturnToUnusedFem(zoneNumbers if zoneNumbers is None else zoneNumbersList, jointIds if jointIds is None else jointIdsSet)
6792 def ExportCad(self, item1 = None, item2 = None) -> None: 6793 if isinstance(item1, tuple) and len(item1) > 0 and isinstance(item1[0], int) and isinstance(item2, str): 6794 cadIdsList = MakeCSharpIntList(item1) 6795 cadIdsEnumerable = IEnumerable(cadIdsList) 6796 return self._Entity.ExportCad(cadIdsEnumerable, item2) 6797 6798 if isinstance(item1, str): 6799 return self._Entity.ExportCad(item1) 6800 6801 return self._Entity.ExportCad(item1, item2)
6755 def RegeneratePfem(self) -> None: 6756 ''' 6757 Regenerates and displays the preview FEM. If running a script outside of the Script Runner, 6758 do not call this method 6759 ''' 6760 return self._Entity.RegeneratePfem()
Regenerates and displays the preview FEM. If running a script outside of the Script Runner, do not call this method
6804class ProjectInfo(IdNameEntityRenameable): 6805 def __init__(self, projectInfo: _api.ProjectInfo): 6806 self._Entity = projectInfo
Represents an entity with an ID and Name.
Inherited Members
6809class FailureModeCategoryCol(IdNameEntityCol[FailureModeCategory]): 6810 def __init__(self, failureModeCategoryCol: _api.FailureModeCategoryCol): 6811 self._Entity = failureModeCategoryCol 6812 self._CollectedClass = FailureModeCategory 6813 6814 @property 6815 def FailureModeCategoryColList(self) -> tuple[FailureModeCategory]: 6816 return tuple([FailureModeCategory(failureModeCategoryCol) for failureModeCategoryCol in self._Entity]) 6817 6818 @overload 6819 def Get(self, name: str) -> FailureModeCategory: ... 6820 6821 @overload 6822 def Get(self, id: int) -> FailureModeCategory: ... 6823 6824 def Get(self, item1 = None) -> FailureModeCategory: 6825 if isinstance(item1, str): 6826 return FailureModeCategory(super().Get(item1)) 6827 6828 if isinstance(item1, int): 6829 return FailureModeCategory(super().Get(item1)) 6830 6831 return self._Entity.Get(item1) 6832 6833 def __getitem__(self, index: int): 6834 return self.FailureModeCategoryColList[index] 6835 6836 def __iter__(self): 6837 yield from self.FailureModeCategoryColList 6838 6839 def __len__(self): 6840 return len(self.FailureModeCategoryColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
6843class FoamCol(Generic[T]): 6844 def __init__(self, foamCol: _api.FoamCol): 6845 self._Entity = foamCol 6846 6847 @property 6848 def FoamColList(self) -> tuple[Foam]: 6849 return tuple([Foam(foamCol) for foamCol in self._Entity]) 6850 6851 def Count(self) -> int: 6852 return self._Entity.Count() 6853 6854 def Get(self, materialName: str) -> Foam: 6855 return Foam(self._Entity.Get(materialName)) 6856 6857 def Contains(self, materialName: str) -> bool: 6858 return self._Entity.Contains(materialName) 6859 6860 def Create(self, materialFamilyName: str, density: float, newMaterialName: str = None, femId: int = None) -> Foam: 6861 return Foam(self._Entity.Create(materialFamilyName, density, newMaterialName, femId)) 6862 6863 def Copy(self, fmToCopyName: str, newMaterialName: str = None, femId: int = None) -> Foam: 6864 return Foam(self._Entity.Copy(fmToCopyName, newMaterialName, femId)) 6865 6866 def Delete(self, materialName: str) -> bool: 6867 return self._Entity.Delete(materialName) 6868 6869 def __getitem__(self, index: int): 6870 return self.FoamColList[index] 6871 6872 def __iter__(self): 6873 yield from self.FoamColList 6874 6875 def __len__(self): 6876 return len(self.FoamColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6879class HoneycombCol(Generic[T]): 6880 def __init__(self, honeycombCol: _api.HoneycombCol): 6881 self._Entity = honeycombCol 6882 6883 @property 6884 def HoneycombColList(self) -> tuple[Honeycomb]: 6885 return tuple([Honeycomb(honeycombCol) for honeycombCol in self._Entity]) 6886 6887 def Count(self) -> int: 6888 return self._Entity.Count() 6889 6890 def Get(self, materialName: str) -> Honeycomb: 6891 return Honeycomb(self._Entity.Get(materialName)) 6892 6893 def Contains(self, materialName: str) -> bool: 6894 return self._Entity.Contains(materialName) 6895 6896 def Create(self, materialFamilyName: str, density: float, newMaterialName: str = None, femId: int = None) -> Honeycomb: 6897 return Honeycomb(self._Entity.Create(materialFamilyName, density, newMaterialName, femId)) 6898 6899 def Copy(self, honeyToCopyName: str, newMaterialName: str = None, femId: int = None) -> Honeycomb: 6900 return Honeycomb(self._Entity.Copy(honeyToCopyName, newMaterialName, femId)) 6901 6902 def Delete(self, materialName: str) -> bool: 6903 return self._Entity.Delete(materialName) 6904 6905 def __getitem__(self, index: int): 6906 return self.HoneycombColList[index] 6907 6908 def __iter__(self): 6909 yield from self.HoneycombColList 6910 6911 def __len__(self): 6912 return len(self.HoneycombColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6915class IsotropicCol(Generic[T]): 6916 def __init__(self, isotropicCol: _api.IsotropicCol): 6917 self._Entity = isotropicCol 6918 6919 @property 6920 def IsotropicColList(self) -> tuple[Isotropic]: 6921 return tuple([Isotropic(isotropicCol) for isotropicCol in self._Entity]) 6922 6923 def Count(self) -> int: 6924 return self._Entity.Count() 6925 6926 def Get(self, materialName: str) -> Isotropic: 6927 return Isotropic(self._Entity.Get(materialName)) 6928 6929 def Contains(self, materialName: str) -> bool: 6930 return self._Entity.Contains(materialName) 6931 6932 def Create(self, materialFamilyName: str, density: float, newMaterialName: str = None, femId: int = None) -> Isotropic: 6933 return Isotropic(self._Entity.Create(materialFamilyName, density, newMaterialName, femId)) 6934 6935 def Copy(self, isoToCopyName: str, newMaterialName: str = None, femId: int = None) -> Isotropic: 6936 return Isotropic(self._Entity.Copy(isoToCopyName, newMaterialName, femId)) 6937 6938 def Delete(self, materialName: str) -> bool: 6939 return self._Entity.Delete(materialName) 6940 6941 def __getitem__(self, index: int): 6942 return self.IsotropicColList[index] 6943 6944 def __iter__(self): 6945 yield from self.IsotropicColList 6946 6947 def __len__(self): 6948 return len(self.IsotropicColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6951class LaminateFamilyCol(IdNameEntityCol[LaminateFamily]): 6952 def __init__(self, laminateFamilyCol: _api.LaminateFamilyCol): 6953 self._Entity = laminateFamilyCol 6954 self._CollectedClass = LaminateFamily 6955 6956 @property 6957 def LaminateFamilyColList(self) -> tuple[LaminateFamily]: 6958 return tuple([LaminateFamily(laminateFamilyCol) for laminateFamilyCol in self._Entity]) 6959 6960 @overload 6961 def Get(self, name: str) -> LaminateFamily: ... 6962 6963 @overload 6964 def Get(self, id: int) -> LaminateFamily: ... 6965 6966 def Get(self, item1 = None) -> LaminateFamily: 6967 if isinstance(item1, str): 6968 return LaminateFamily(super().Get(item1)) 6969 6970 if isinstance(item1, int): 6971 return LaminateFamily(super().Get(item1)) 6972 6973 return self._Entity.Get(item1) 6974 6975 def __getitem__(self, index: int): 6976 return self.LaminateFamilyColList[index] 6977 6978 def __iter__(self): 6979 yield from self.LaminateFamilyColList 6980 6981 def __len__(self): 6982 return len(self.LaminateFamilyColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
6985class LaminateCol(Generic[T]): 6986 def __init__(self, laminateCol: _api.LaminateCol): 6987 self._Entity = laminateCol 6988 6989 @property 6990 def LaminateColList(self) -> tuple[Laminate]: 6991 return tuple([Laminate(laminateCol) for laminateCol in self._Entity]) 6992 6993 def Count(self) -> int: 6994 return self._Entity.Count() 6995 6996 def Get(self, laminateName: str) -> LaminateBase: 6997 result = self._Entity.Get(laminateName) 6998 thisClass = type(result).__name__ 6999 givenClass = LaminateBase 7000 for subclass in LaminateBase.__subclasses__(): 7001 if subclass.__name__ == thisClass: 7002 givenClass = subclass 7003 return givenClass(result) 7004 7005 def Contains(self, laminateName: str) -> bool: 7006 return self._Entity.Contains(laminateName) 7007 7008 def CreateLaminate(self, materialFamily: str, laminateName: str = None) -> Laminate: 7009 return Laminate(self._Entity.CreateLaminate(materialFamily, laminateName)) 7010 7011 def CreateStiffenerLaminate(self, materialFamily: str, stiffenerProfile: types.StiffenerProfile, laminateName: str = None) -> StiffenerLaminate: 7012 return StiffenerLaminate(self._Entity.CreateStiffenerLaminate(materialFamily, _types.StiffenerProfile(stiffenerProfile.value), laminateName)) 7013 7014 def Copy(self, laminateToCopyName: str, newLaminateName: str = None) -> LaminateBase: 7015 result = self._Entity.Copy(laminateToCopyName, newLaminateName) 7016 thisClass = type(result).__name__ 7017 givenClass = LaminateBase 7018 for subclass in LaminateBase.__subclasses__(): 7019 if subclass.__name__ == thisClass: 7020 givenClass = subclass 7021 return givenClass(result) 7022 7023 def Delete(self, name: str) -> bool: 7024 return self._Entity.Delete(name) 7025 7026 def GetLaminate(self, name: str) -> Laminate: 7027 return Laminate(self._Entity.GetLaminate(name)) 7028 7029 def GetStiffenerLaminate(self, name: str) -> StiffenerLaminate: 7030 return StiffenerLaminate(self._Entity.GetStiffenerLaminate(name)) 7031 7032 def __getitem__(self, index: int): 7033 return self.LaminateColList[index] 7034 7035 def __iter__(self): 7036 yield from self.LaminateColList 7037 7038 def __len__(self): 7039 return len(self.LaminateColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6996 def Get(self, laminateName: str) -> LaminateBase: 6997 result = self._Entity.Get(laminateName) 6998 thisClass = type(result).__name__ 6999 givenClass = LaminateBase 7000 for subclass in LaminateBase.__subclasses__(): 7001 if subclass.__name__ == thisClass: 7002 givenClass = subclass 7003 return givenClass(result)
7014 def Copy(self, laminateToCopyName: str, newLaminateName: str = None) -> LaminateBase: 7015 result = self._Entity.Copy(laminateToCopyName, newLaminateName) 7016 thisClass = type(result).__name__ 7017 givenClass = LaminateBase 7018 for subclass in LaminateBase.__subclasses__(): 7019 if subclass.__name__ == thisClass: 7020 givenClass = subclass 7021 return givenClass(result)
7042class OrthotropicCol(Generic[T]): 7043 def __init__(self, orthotropicCol: _api.OrthotropicCol): 7044 self._Entity = orthotropicCol 7045 7046 @property 7047 def OrthotropicColList(self) -> tuple[Orthotropic]: 7048 return tuple([Orthotropic(orthotropicCol) for orthotropicCol in self._Entity]) 7049 7050 def Count(self) -> int: 7051 return self._Entity.Count() 7052 7053 def Get(self, materialName: str) -> Orthotropic: 7054 return Orthotropic(self._Entity.Get(materialName)) 7055 7056 def Contains(self, materialName: str) -> bool: 7057 return self._Entity.Contains(materialName) 7058 7059 def Create(self, materialFamilyName: str, thickness: float, density: float, newMaterialName: str = None, femId: int = None) -> Orthotropic: 7060 return Orthotropic(self._Entity.Create(materialFamilyName, thickness, density, newMaterialName, femId)) 7061 7062 def Copy(self, orthoToCopyName: str, newMaterialName: str = None, femId: int = None) -> Orthotropic: 7063 return Orthotropic(self._Entity.Copy(orthoToCopyName, newMaterialName, femId)) 7064 7065 def Delete(self, materialName: str) -> bool: 7066 return self._Entity.Delete(materialName) 7067 7068 def __getitem__(self, index: int): 7069 return self.OrthotropicColList[index] 7070 7071 def __iter__(self): 7072 yield from self.OrthotropicColList 7073 7074 def __len__(self): 7075 return len(self.OrthotropicColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
7078class PluginPackageCol(IdNameEntityCol[PluginPackage]): 7079 def __init__(self, pluginPackageCol: _api.PluginPackageCol): 7080 self._Entity = pluginPackageCol 7081 self._CollectedClass = PluginPackage 7082 7083 @property 7084 def PluginPackageColList(self) -> tuple[PluginPackage]: 7085 return tuple([PluginPackage(pluginPackageCol) for pluginPackageCol in self._Entity]) 7086 7087 def AddPluginPackage(self, path: str) -> PluginPackage: 7088 return PluginPackage(self._Entity.AddPluginPackage(path)) 7089 7090 @overload 7091 def RemovePluginPackage(self, name: str) -> bool: ... 7092 7093 @overload 7094 def RemovePluginPackage(self, id: int) -> bool: ... 7095 7096 def ClearAllPluginPackages(self) -> None: 7097 ''' 7098 Clears all packages out of the database 7099 ''' 7100 return self._Entity.ClearAllPluginPackages() 7101 7102 def GetPluginPackages(self) -> list[PluginPackage]: 7103 ''' 7104 Gets a list of package info 7105 Includes name, id, file path, version, description, and modification date 7106 ''' 7107 return [PluginPackage(pluginPackage) for pluginPackage in self._Entity.GetPluginPackages()] 7108 7109 @overload 7110 def Get(self, name: str) -> PluginPackage: ... 7111 7112 @overload 7113 def Get(self, id: int) -> PluginPackage: ... 7114 7115 def RemovePluginPackage(self, item1 = None) -> bool: 7116 if isinstance(item1, str): 7117 return self._Entity.RemovePluginPackage(item1) 7118 7119 if isinstance(item1, int): 7120 return self._Entity.RemovePluginPackage(item1) 7121 7122 return self._Entity.RemovePluginPackage(item1) 7123 7124 def Get(self, item1 = None) -> PluginPackage: 7125 if isinstance(item1, str): 7126 return PluginPackage(super().Get(item1)) 7127 7128 if isinstance(item1, int): 7129 return PluginPackage(super().Get(item1)) 7130 7131 return self._Entity.Get(item1) 7132 7133 def __getitem__(self, index: int): 7134 return self.PluginPackageColList[index] 7135 7136 def __iter__(self): 7137 yield from self.PluginPackageColList 7138 7139 def __len__(self): 7140 return len(self.PluginPackageColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
7096 def ClearAllPluginPackages(self) -> None: 7097 ''' 7098 Clears all packages out of the database 7099 ''' 7100 return self._Entity.ClearAllPluginPackages()
Clears all packages out of the database
7102 def GetPluginPackages(self) -> list[PluginPackage]: 7103 ''' 7104 Gets a list of package info 7105 Includes name, id, file path, version, description, and modification date 7106 ''' 7107 return [PluginPackage(pluginPackage) for pluginPackage in self._Entity.GetPluginPackages()]
Gets a list of package info Includes name, id, file path, version, description, and modification date
Inherited Members
7143class ProjectInfoCol(IdNameEntityCol[ProjectInfo]): 7144 def __init__(self, projectInfoCol: _api.ProjectInfoCol): 7145 self._Entity = projectInfoCol 7146 self._CollectedClass = ProjectInfo 7147 7148 @property 7149 def ProjectInfoColList(self) -> tuple[ProjectInfo]: 7150 return tuple([ProjectInfo(projectInfoCol) for projectInfoCol in self._Entity]) 7151 7152 @overload 7153 def Get(self, name: str) -> ProjectInfo: ... 7154 7155 @overload 7156 def Get(self, id: int) -> ProjectInfo: ... 7157 7158 def Get(self, item1 = None) -> ProjectInfo: 7159 if isinstance(item1, str): 7160 return ProjectInfo(super().Get(item1)) 7161 7162 if isinstance(item1, int): 7163 return ProjectInfo(super().Get(item1)) 7164 7165 return self._Entity.Get(item1) 7166 7167 def __getitem__(self, index: int): 7168 return self.ProjectInfoColList[index] 7169 7170 def __iter__(self): 7171 yield from self.ProjectInfoColList 7172 7173 def __len__(self): 7174 return len(self.ProjectInfoColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
7177class Application: 7178 ''' 7179 HyperX scripting application. 7180 This API is not guaranteed to be thread-safe. 7181 Calls into a single application instance or its descendents are not safe to be called concurrently. 7182 7183 However, it is safe enough for integration testing to have multiple 7184 application instances with a single process. 7185 ''' 7186 def __init__(self, application: _api.Application): 7187 self._Entity = application 7188 7189 @property 7190 def CompilationDate(self) -> str: 7191 return self._Entity.CompilationDate 7192 7193 @property 7194 def DatabasePath(self) -> str: 7195 return self._Entity.DatabasePath 7196 7197 @property 7198 def ActiveProject(self) -> Project: 7199 ''' 7200 Represents a HyperX project within a database. 7201 ''' 7202 result = self._Entity.ActiveProject 7203 return Project(result) if result is not None else None 7204 7205 @property 7206 def UiRunnerMode(self) -> bool: 7207 return self._Entity.UiRunnerMode 7208 7209 @property 7210 def Version(self) -> str: 7211 return self._Entity.Version 7212 7213 @property 7214 def FailureModeCategories(self) -> FailureModeCategoryCol: 7215 result = self._Entity.FailureModeCategories 7216 return FailureModeCategoryCol(result) if result is not None else None 7217 7218 @property 7219 def FailureModes(self) -> FailureModeCol: 7220 result = self._Entity.FailureModes 7221 return FailureModeCol(result) if result is not None else None 7222 7223 @property 7224 def Packages(self) -> PluginPackageCol: 7225 result = self._Entity.Packages 7226 return PluginPackageCol(result) if result is not None else None 7227 7228 @property 7229 def Foams(self) -> FoamCol: 7230 ''' 7231 Contains a set of all foam materials in a database. 7232 ''' 7233 result = self._Entity.Foams 7234 return FoamCol(result) if result is not None else None 7235 7236 @property 7237 def Honeycombs(self) -> HoneycombCol: 7238 ''' 7239 Contains a set of all honeycomb materials in a database. 7240 ''' 7241 result = self._Entity.Honeycombs 7242 return HoneycombCol(result) if result is not None else None 7243 7244 @property 7245 def Isotropics(self) -> IsotropicCol: 7246 ''' 7247 Contains a set of all isotropic materials in a database. 7248 ''' 7249 result = self._Entity.Isotropics 7250 return IsotropicCol(result) if result is not None else None 7251 7252 @property 7253 def Laminates(self) -> LaminateCol: 7254 result = self._Entity.Laminates 7255 return LaminateCol(result) if result is not None else None 7256 7257 @property 7258 def LaminateFamilies(self) -> LaminateFamilyCol: 7259 result = self._Entity.LaminateFamilies 7260 return LaminateFamilyCol(result) if result is not None else None 7261 7262 @property 7263 def AnalysisProperties(self) -> AnalysisPropertyCol: 7264 result = self._Entity.AnalysisProperties 7265 return AnalysisPropertyCol(result) if result is not None else None 7266 7267 @property 7268 def DesignProperties(self) -> DesignPropertyCol: 7269 result = self._Entity.DesignProperties 7270 return DesignPropertyCol(result) if result is not None else None 7271 7272 @property 7273 def LoadProperties(self) -> LoadPropertyCol: 7274 result = self._Entity.LoadProperties 7275 return LoadPropertyCol(result) if result is not None else None 7276 7277 @property 7278 def Orthotropics(self) -> OrthotropicCol: 7279 ''' 7280 Contains a set of all orthotropic materials in a database. 7281 ''' 7282 result = self._Entity.Orthotropics 7283 return OrthotropicCol(result) if result is not None else None 7284 7285 @property 7286 def ProjectInfos(self) -> ProjectInfoCol: 7287 ''' 7288 Contains a set of all projects in a database. 7289 ''' 7290 result = self._Entity.ProjectInfos 7291 return ProjectInfoCol(result) if result is not None else None 7292 7293 @property 7294 def UserName(self) -> str: 7295 return self._Entity.UserName 7296 7297 @UserName.setter 7298 def UserName(self, value: str) -> None: 7299 self._Entity.UserName = value 7300 7301 def CloseDatabase(self, delay: int = 0) -> None: 7302 return self._Entity.CloseDatabase(delay) 7303 7304 def CopyProject(self, projectId: int, newName: str = None, copyDesignProperties: bool = True, copyAnalysisProperties: bool = True, copyLoadProperties: bool = True, copyWorkingFolder: bool = True) -> ProjectInfo: 7305 return ProjectInfo(self._Entity.CopyProject(projectId, newName, copyDesignProperties, copyAnalysisProperties, copyLoadProperties, copyWorkingFolder)) 7306 7307 def CreateDatabaseFromTemplate(self, templateName: str, newPath: str) -> None: 7308 return self._Entity.CreateDatabaseFromTemplate(templateName, newPath) 7309 7310 def CreateProject(self, projectName: str = None) -> ProjectInfo: 7311 return ProjectInfo(self._Entity.CreateProject(projectName)) 7312 7313 def DeleteProject(self, projectName: str) -> ProjectDeletionStatus: 7314 return ProjectDeletionStatus[self._Entity.DeleteProject(projectName).ToString()] 7315 7316 def Dispose(self) -> None: 7317 ''' 7318 Dispose of the application. Should be explicitly called after the application 7319 is no longer needed unless the application is wrapped with a using clause. 7320 ''' 7321 return self._Entity.Dispose() 7322 7323 def GetAnalyses(self) -> dict[int, AnalysisDefinition]: 7324 ''' 7325 Get all Analysis Definitions in the database. 7326 ''' 7327 return dict[int, AnalysisDefinition](self._Entity.GetAnalyses()) 7328 7329 def Login(self, userName: str, password: str = "") -> None: 7330 return self._Entity.Login(userName, password) 7331 7332 def Migrate(self, databasePath: str) -> str: 7333 return self._Entity.Migrate(databasePath) 7334 7335 def CheckDatabaseIsUpToDate(self, databasePath: str) -> bool: 7336 return self._Entity.CheckDatabaseIsUpToDate(databasePath) 7337 7338 def OpenDatabase(self, databasePath: str) -> None: 7339 return self._Entity.OpenDatabase(databasePath) 7340 7341 def SelectProject(self, projectName: str) -> Project: 7342 return Project(self._Entity.SelectProject(projectName))
HyperX scripting application. This API is not guaranteed to be thread-safe. Calls into a single application instance or its descendents are not safe to be called concurrently.
However, it is safe enough for integration testing to have multiple
application instances with a single process.
7197 @property 7198 def ActiveProject(self) -> Project: 7199 ''' 7200 Represents a HyperX project within a database. 7201 ''' 7202 result = self._Entity.ActiveProject 7203 return Project(result) if result is not None else None
Represents a HyperX project within a database.
7228 @property 7229 def Foams(self) -> FoamCol: 7230 ''' 7231 Contains a set of all foam materials in a database. 7232 ''' 7233 result = self._Entity.Foams 7234 return FoamCol(result) if result is not None else None
Contains a set of all foam materials in a database.
7236 @property 7237 def Honeycombs(self) -> HoneycombCol: 7238 ''' 7239 Contains a set of all honeycomb materials in a database. 7240 ''' 7241 result = self._Entity.Honeycombs 7242 return HoneycombCol(result) if result is not None else None
Contains a set of all honeycomb materials in a database.
7244 @property 7245 def Isotropics(self) -> IsotropicCol: 7246 ''' 7247 Contains a set of all isotropic materials in a database. 7248 ''' 7249 result = self._Entity.Isotropics 7250 return IsotropicCol(result) if result is not None else None
Contains a set of all isotropic materials in a database.
7277 @property 7278 def Orthotropics(self) -> OrthotropicCol: 7279 ''' 7280 Contains a set of all orthotropic materials in a database. 7281 ''' 7282 result = self._Entity.Orthotropics 7283 return OrthotropicCol(result) if result is not None else None
Contains a set of all orthotropic materials in a database.
7285 @property 7286 def ProjectInfos(self) -> ProjectInfoCol: 7287 ''' 7288 Contains a set of all projects in a database. 7289 ''' 7290 result = self._Entity.ProjectInfos 7291 return ProjectInfoCol(result) if result is not None else None
Contains a set of all projects in a database.
7304 def CopyProject(self, projectId: int, newName: str = None, copyDesignProperties: bool = True, copyAnalysisProperties: bool = True, copyLoadProperties: bool = True, copyWorkingFolder: bool = True) -> ProjectInfo: 7305 return ProjectInfo(self._Entity.CopyProject(projectId, newName, copyDesignProperties, copyAnalysisProperties, copyLoadProperties, copyWorkingFolder))
7316 def Dispose(self) -> None: 7317 ''' 7318 Dispose of the application. Should be explicitly called after the application 7319 is no longer needed unless the application is wrapped with a using clause. 7320 ''' 7321 return self._Entity.Dispose()
Dispose of the application. Should be explicitly called after the application is no longer needed unless the application is wrapped with a using clause.
7323 def GetAnalyses(self) -> dict[int, AnalysisDefinition]: 7324 ''' 7325 Get all Analysis Definitions in the database. 7326 ''' 7327 return dict[int, AnalysisDefinition](self._Entity.GetAnalyses())
Get all Analysis Definitions in the database.
7345class JointDesignProperty(DesignProperty): 7346 def __init__(self, jointDesignProperty: _api.JointDesignProperty): 7347 self._Entity = jointDesignProperty
Represents an entity with an ID and Name.
Inherited Members
7350class SizingMaterial(IdEntity): 7351 def __init__(self, sizingMaterial: _api.SizingMaterial): 7352 self._Entity = sizingMaterial 7353 7354 @property 7355 def MaterialId(self) -> int: 7356 return self._Entity.MaterialId 7357 7358 @property 7359 def MaterialType(self) -> types.MaterialType: 7360 ''' 7361 Represents a material's type. 7362 ''' 7363 return types.MaterialType[self._Entity.MaterialType.ToString()]
Represents an entity with an ID.
7366class SizingMaterialCol(IdEntityCol[SizingMaterial]): 7367 def __init__(self, sizingMaterialCol: _api.SizingMaterialCol): 7368 self._Entity = sizingMaterialCol 7369 self._CollectedClass = SizingMaterial 7370 7371 @property 7372 def SizingMaterialColList(self) -> tuple[SizingMaterial]: 7373 return tuple([SizingMaterial(sizingMaterialCol) for sizingMaterialCol in self._Entity]) 7374 7375 @overload 7376 def Get(self, name: str) -> SizingMaterial: ... 7377 7378 @overload 7379 def Contains(self, name: str) -> bool: ... 7380 7381 @overload 7382 def AddSizingMaterial(self, materialId: int) -> bool: ... 7383 7384 @overload 7385 def AddSizingMaterial(self, name: str) -> bool: ... 7386 7387 @overload 7388 def RemoveSizingMaterial(self, materialId: int) -> bool: ... 7389 7390 @overload 7391 def RemoveSizingMaterial(self, name: str) -> bool: ... 7392 7393 @overload 7394 def Contains(self, id: int) -> bool: ... 7395 7396 @overload 7397 def Get(self, id: int) -> SizingMaterial: ... 7398 7399 def Get(self, item1 = None) -> SizingMaterial: 7400 if isinstance(item1, str): 7401 return SizingMaterial(self._Entity.Get(item1)) 7402 7403 if isinstance(item1, int): 7404 return SizingMaterial(super().Get(item1)) 7405 7406 return self._Entity.Get(item1) 7407 7408 def Contains(self, item1 = None) -> bool: 7409 if isinstance(item1, str): 7410 return self._Entity.Contains(item1) 7411 7412 if isinstance(item1, int): 7413 return bool(super().Contains(item1)) 7414 7415 return self._Entity.Contains(item1) 7416 7417 def AddSizingMaterial(self, item1 = None) -> bool: 7418 if isinstance(item1, int): 7419 return self._Entity.AddSizingMaterial(item1) 7420 7421 if isinstance(item1, str): 7422 return self._Entity.AddSizingMaterial(item1) 7423 7424 return self._Entity.AddSizingMaterial(item1) 7425 7426 def RemoveSizingMaterial(self, item1 = None) -> bool: 7427 if isinstance(item1, int): 7428 return self._Entity.RemoveSizingMaterial(item1) 7429 7430 if isinstance(item1, str): 7431 return self._Entity.RemoveSizingMaterial(item1) 7432 7433 return self._Entity.RemoveSizingMaterial(item1) 7434 7435 def __getitem__(self, index: int): 7436 return self.SizingMaterialColList[index] 7437 7438 def __iter__(self): 7439 yield from self.SizingMaterialColList 7440 7441 def __len__(self): 7442 return len(self.SizingMaterialColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
7445class ZoneOverride(IdEntity): 7446 def __init__(self, zoneOverride: _api.ZoneOverride): 7447 self._Entity = zoneOverride 7448 7449 @property 7450 def AllowMaterials(self) -> bool: 7451 return self._Entity.AllowMaterials 7452 7453 @property 7454 def ProjectId(self) -> int: 7455 return self._Entity.ProjectId 7456 7457 @property 7458 def DesignId(self) -> int: 7459 return self._Entity.DesignId 7460 7461 @property 7462 def FamilyId(self) -> types.BeamPanelFamily: 7463 return types.BeamPanelFamily[self._Entity.FamilyId.ToString()] 7464 7465 @property 7466 def ConceptId(self) -> int: 7467 return self._Entity.ConceptId 7468 7469 @property 7470 def VariableId(self) -> int: 7471 return self._Entity.VariableId 7472 7473 @property 7474 def MinBound(self) -> float: 7475 return self._Entity.MinBound 7476 7477 @property 7478 def MaxBound(self) -> float: 7479 return self._Entity.MaxBound 7480 7481 @property 7482 def StepSize(self) -> float: 7483 return self._Entity.StepSize 7484 7485 @property 7486 def MinPlies(self) -> int: 7487 return self._Entity.MinPlies 7488 7489 @property 7490 def MaxPlies(self) -> int: 7491 return self._Entity.MaxPlies 7492 7493 @property 7494 def PlyStepSize(self) -> int: 7495 return self._Entity.PlyStepSize 7496 7497 @property 7498 def InputMode(self) -> types.VariableInputMode: 7499 return types.VariableInputMode[self._Entity.InputMode.ToString()] 7500 7501 @property 7502 def SizingMaterials(self) -> SizingMaterialCol: 7503 result = self._Entity.SizingMaterials 7504 return SizingMaterialCol(result) if result is not None else None 7505 7506 @property 7507 def AnalysisValue(self) -> float: 7508 return self._Entity.AnalysisValue 7509 7510 @property 7511 def AnalysisMaterial(self) -> str: 7512 return self._Entity.AnalysisMaterial 7513 7514 @property 7515 def AnalysisMaterialType(self) -> types.MaterialType: 7516 return types.MaterialType[self._Entity.AnalysisMaterialType.ToString()] 7517 7518 @MinBound.setter 7519 def MinBound(self, value: float) -> None: 7520 self._Entity.MinBound = value 7521 7522 @MaxBound.setter 7523 def MaxBound(self, value: float) -> None: 7524 self._Entity.MaxBound = value 7525 7526 @StepSize.setter 7527 def StepSize(self, value: float) -> None: 7528 self._Entity.StepSize = value 7529 7530 @MinPlies.setter 7531 def MinPlies(self, value: int) -> None: 7532 self._Entity.MinPlies = value 7533 7534 @MaxPlies.setter 7535 def MaxPlies(self, value: int) -> None: 7536 self._Entity.MaxPlies = value 7537 7538 @PlyStepSize.setter 7539 def PlyStepSize(self, value: int) -> None: 7540 self._Entity.PlyStepSize = value 7541 7542 @AnalysisValue.setter 7543 def AnalysisValue(self, value: float) -> None: 7544 self._Entity.AnalysisValue = value 7545 7546 @AnalysisMaterial.setter 7547 def AnalysisMaterial(self, value: str) -> None: 7548 self._Entity.AnalysisMaterial = value
Represents an entity with an ID.
7551class ToolingConstraint(IdNameEntity): 7552 ''' 7553 Tooling constraints are a feature of Design Properties for Zones. 7554 ''' 7555 def __init__(self, toolingConstraint: _api.ToolingConstraint): 7556 self._Entity = toolingConstraint 7557 7558 @property 7559 def ConstraintMax(self) -> float: 7560 return self._Entity.ConstraintMax 7561 7562 @property 7563 def ConstraintMin(self) -> float: 7564 return self._Entity.ConstraintMin 7565 7566 @property 7567 def ConstraintValue(self) -> float: 7568 return self._Entity.ConstraintValue 7569 7570 @property 7571 def ToolingSelectionType(self) -> types.ToolingSelectionType: 7572 ''' 7573 Defines which selection a given tooling constraint is currently set to. 7574 ''' 7575 return types.ToolingSelectionType[self._Entity.ToolingSelectionType.ToString()] 7576 7577 def SetToAnyValue(self) -> None: 7578 return self._Entity.SetToAnyValue() 7579 7580 def SetToInequality(self, value: float) -> None: 7581 return self._Entity.SetToInequality(value) 7582 7583 def SetToRange(self, min: float, max: float) -> None: 7584 return self._Entity.SetToRange(min, max) 7585 7586 def SetToValue(self, value: float) -> None: 7587 return self._Entity.SetToValue(value)
Tooling constraints are a feature of Design Properties for Zones.
7570 @property 7571 def ToolingSelectionType(self) -> types.ToolingSelectionType: 7572 ''' 7573 Defines which selection a given tooling constraint is currently set to. 7574 ''' 7575 return types.ToolingSelectionType[self._Entity.ToolingSelectionType.ToString()]
Defines which selection a given tooling constraint is currently set to.
Inherited Members
7590class ZoneOverrideCol(IdEntityCol[ZoneOverride]): 7591 def __init__(self, zoneOverrideCol: _api.ZoneOverrideCol): 7592 self._Entity = zoneOverrideCol 7593 self._CollectedClass = ZoneOverride 7594 7595 @property 7596 def ZoneOverrideColList(self) -> tuple[ZoneOverride]: 7597 return tuple([ZoneOverride(zoneOverrideCol) for zoneOverrideCol in self._Entity]) 7598 7599 def Get(self, zoneNumber: int) -> ZoneOverride: 7600 return ZoneOverride(self._Entity.Get(zoneNumber)) 7601 7602 def __getitem__(self, index: int): 7603 return self.ZoneOverrideColList[index] 7604 7605 def __iter__(self): 7606 yield from self.ZoneOverrideColList 7607 7608 def __len__(self): 7609 return len(self.ZoneOverrideColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
7612class DesignVariable(IdEntity): 7613 ''' 7614 Holds design variable data. 7615 Min, max, steps, materials. 7616 ''' 7617 def __init__(self, designVariable: _api.DesignVariable): 7618 self._Entity = designVariable 7619 7620 @property 7621 def VariableParameter(self) -> types.VariableParameter: 7622 return types.VariableParameter[self._Entity.VariableParameter.ToString()] 7623 7624 @property 7625 def AllowMaterials(self) -> bool: 7626 return self._Entity.AllowMaterials 7627 7628 @property 7629 def Max(self) -> float: 7630 return self._Entity.Max 7631 7632 @property 7633 def Min(self) -> float: 7634 return self._Entity.Min 7635 7636 @property 7637 def Name(self) -> str: 7638 return self._Entity.Name 7639 7640 @property 7641 def StepSize(self) -> float: 7642 return self._Entity.StepSize 7643 7644 @property 7645 def UseAnalysis(self) -> bool: 7646 return self._Entity.UseAnalysis 7647 7648 @property 7649 def AnalysisMaterial(self) -> str: 7650 return self._Entity.AnalysisMaterial 7651 7652 @property 7653 def AnalysisMaterialType(self) -> types.MaterialType: 7654 return types.MaterialType[self._Entity.AnalysisMaterialType.ToString()] 7655 7656 @property 7657 def SizingMaterialType(self) -> types.MaterialType: 7658 return types.MaterialType[self._Entity.SizingMaterialType.ToString()] 7659 7660 @property 7661 def AnalysisValue(self) -> float: 7662 return self._Entity.AnalysisValue 7663 7664 @property 7665 def Overrides(self) -> ZoneOverrideCol: 7666 result = self._Entity.Overrides 7667 return ZoneOverrideCol(result) if result is not None else None 7668 7669 @Max.setter 7670 def Max(self, value: float) -> None: 7671 self._Entity.Max = value 7672 7673 @Min.setter 7674 def Min(self, value: float) -> None: 7675 self._Entity.Min = value 7676 7677 @StepSize.setter 7678 def StepSize(self, value: float) -> None: 7679 self._Entity.StepSize = value 7680 7681 @UseAnalysis.setter 7682 def UseAnalysis(self, value: bool) -> None: 7683 self._Entity.UseAnalysis = value 7684 7685 @AnalysisMaterial.setter 7686 def AnalysisMaterial(self, value: str) -> None: 7687 self._Entity.AnalysisMaterial = value 7688 7689 @AnalysisValue.setter 7690 def AnalysisValue(self, value: float) -> None: 7691 self._Entity.AnalysisValue = value 7692 7693 @overload 7694 def AddMaterials(self, materialIds: set[int]) -> None: ... 7695 7696 @overload 7697 def AddMaterials(self, materialNames: set[str]) -> None: ... 7698 7699 def GetSizingMaterials(self) -> list[int]: 7700 ''' 7701 Get a list of materials used for sizing, if they exist. 7702 ''' 7703 return [int32 for int32 in self._Entity.GetSizingMaterials()] 7704 7705 def RemoveSizingMaterials(self, materialIds: tuple[int] = None) -> None: 7706 materialIdsList = MakeCSharpIntList(materialIds) 7707 materialIdsEnumerable = IEnumerable(materialIdsList) 7708 return self._Entity.RemoveSizingMaterials(materialIds if materialIds is None else materialIdsEnumerable) 7709 7710 def GetAnalysisMaterial(self) -> int: 7711 ''' 7712 Get the material used for analysis, if it exists. 7713 ''' 7714 return self._Entity.GetAnalysisMaterial() 7715 7716 def RemoveAnalysisMaterial(self) -> None: 7717 ''' 7718 Remove the analysis material assigned to this variable. 7719 ''' 7720 return self._Entity.RemoveAnalysisMaterial() 7721 7722 def AddMaterials(self, item1 = None) -> None: 7723 if isinstance(item1, set): 7724 materialIdsSet = HashSet[int]() 7725 if item1 is not None: 7726 for thing in item1: 7727 if thing is not None: 7728 materialIdsSet.Add(thing) 7729 return self._Entity.AddMaterials(materialIdsSet) 7730 7731 if isinstance(item1, set): 7732 materialNamesSet = HashSet[str]() 7733 if item1 is not None: 7734 for thing in item1: 7735 if thing is not None: 7736 materialNamesSet.Add(thing) 7737 return self._Entity.AddMaterials(materialNamesSet) 7738 7739 return self._Entity.AddMaterials(item1)
Holds design variable data. Min, max, steps, materials.
7722 def AddMaterials(self, item1 = None) -> None: 7723 if isinstance(item1, set): 7724 materialIdsSet = HashSet[int]() 7725 if item1 is not None: 7726 for thing in item1: 7727 if thing is not None: 7728 materialIdsSet.Add(thing) 7729 return self._Entity.AddMaterials(materialIdsSet) 7730 7731 if isinstance(item1, set): 7732 materialNamesSet = HashSet[str]() 7733 if item1 is not None: 7734 for thing in item1: 7735 if thing is not None: 7736 materialNamesSet.Add(thing) 7737 return self._Entity.AddMaterials(materialNamesSet) 7738 7739 return self._Entity.AddMaterials(item1)
7699 def GetSizingMaterials(self) -> list[int]: 7700 ''' 7701 Get a list of materials used for sizing, if they exist. 7702 ''' 7703 return [int32 for int32 in self._Entity.GetSizingMaterials()]
Get a list of materials used for sizing, if they exist.
7710 def GetAnalysisMaterial(self) -> int: 7711 ''' 7712 Get the material used for analysis, if it exists. 7713 ''' 7714 return self._Entity.GetAnalysisMaterial()
Get the material used for analysis, if it exists.
7742class ToolingConstraintCol(IdNameEntityCol[ToolingConstraint]): 7743 def __init__(self, toolingConstraintCol: _api.ToolingConstraintCol): 7744 self._Entity = toolingConstraintCol 7745 self._CollectedClass = ToolingConstraint 7746 7747 @property 7748 def ToolingConstraintColList(self) -> tuple[ToolingConstraint]: 7749 return tuple([ToolingConstraint(toolingConstraintCol) for toolingConstraintCol in self._Entity]) 7750 7751 @overload 7752 def Get(self, name: str) -> ToolingConstraint: ... 7753 7754 @overload 7755 def Get(self, id: int) -> ToolingConstraint: ... 7756 7757 def Get(self, item1 = None) -> ToolingConstraint: 7758 if isinstance(item1, str): 7759 return ToolingConstraint(super().Get(item1)) 7760 7761 if isinstance(item1, int): 7762 return ToolingConstraint(super().Get(item1)) 7763 7764 return self._Entity.Get(item1) 7765 7766 def __getitem__(self, index: int): 7767 return self.ToolingConstraintColList[index] 7768 7769 def __iter__(self): 7770 yield from self.ToolingConstraintColList 7771 7772 def __len__(self): 7773 return len(self.ToolingConstraintColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
7776class DesignVariableCol(IdEntityCol[DesignVariable]): 7777 def __init__(self, designVariableCol: _api.DesignVariableCol): 7778 self._Entity = designVariableCol 7779 self._CollectedClass = DesignVariable 7780 7781 @property 7782 def DesignVariableColList(self) -> tuple[DesignVariable]: 7783 return tuple([DesignVariable(designVariableCol) for designVariableCol in self._Entity]) 7784 7785 @overload 7786 def Get(self, parameterId: types.VariableParameter) -> DesignVariable: ... 7787 7788 @overload 7789 def Get(self, id: int) -> DesignVariable: ... 7790 7791 def Get(self, item1 = None) -> DesignVariable: 7792 if isinstance(item1, types.VariableParameter): 7793 return DesignVariable(self._Entity.Get(_types.VariableParameter(item1.value))) 7794 7795 if isinstance(item1, int): 7796 return DesignVariable(super().Get(item1)) 7797 7798 return self._Entity.Get(_types.VariableParameter(item1.value)) 7799 7800 def __getitem__(self, index: int): 7801 return self.DesignVariableColList[index] 7802 7803 def __iter__(self): 7804 yield from self.DesignVariableColList 7805 7806 def __len__(self): 7807 return len(self.DesignVariableColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
7791 def Get(self, item1 = None) -> DesignVariable: 7792 if isinstance(item1, types.VariableParameter): 7793 return DesignVariable(self._Entity.Get(_types.VariableParameter(item1.value))) 7794 7795 if isinstance(item1, int): 7796 return DesignVariable(super().Get(item1)) 7797 7798 return self._Entity.Get(_types.VariableParameter(item1.value))
Inherited Members
7810class ZoneDesignProperty(DesignProperty): 7811 def __init__(self, zoneDesignProperty: _api.ZoneDesignProperty): 7812 self._Entity = zoneDesignProperty 7813 7814 @property 7815 def FamilyId(self) -> types.BeamPanelFamily: 7816 return types.BeamPanelFamily[self._Entity.FamilyId.ToString()] 7817 7818 @property 7819 def ConceptId(self) -> int: 7820 return self._Entity.ConceptId 7821 7822 @property 7823 def FamilyConceptUID(self) -> types.FamilyConceptUID: 7824 return types.FamilyConceptUID[self._Entity.FamilyConceptUID.ToString()] 7825 7826 @property 7827 def ToolingConstraints(self) -> ToolingConstraintCol: 7828 result = self._Entity.ToolingConstraints 7829 return ToolingConstraintCol(result) if result is not None else None 7830 7831 @property 7832 def DesignVariables(self) -> DesignVariableCol: 7833 result = self._Entity.DesignVariables 7834 return DesignVariableCol(result) if result is not None else None
Represents an entity with an ID and Name.
Inherited Members
7837class BulkUpdaterBase(ABC): 7838 def __init__(self, bulkUpdaterBase: _api.BulkUpdaterBase): 7839 self._Entity = bulkUpdaterBase 7840 7841 def Update(self, func: Action) -> None: 7842 entityType = self._Entity.GetType().BaseType.GenericTypeArguments[0] 7843 funcAction = Action[entityType](func) 7844 return self._Entity.Update(funcAction)
7847class LoadPropertyUserRowBulkUpdater(BulkUpdaterBase): 7848 def __init__(self, loadPropertyUserRowBulkUpdater: _api.LoadPropertyUserRowBulkUpdater): 7849 self._Entity = loadPropertyUserRowBulkUpdater
Inherited Members
7852class LoadPropertyUserRow(IdNameEntity): 7853 def __init__(self, loadPropertyUserRow: _api.LoadPropertyUserRow): 7854 self._Entity = loadPropertyUserRow 7855 7856 @property 7857 def LoadScenarioId(self) -> int: 7858 return self._Entity.LoadScenarioId 7859 7860 @property 7861 def LoadPropertyId(self) -> int: 7862 return self._Entity.LoadPropertyId 7863 7864 @property 7865 def Type(self) -> types.LoadSetType: 7866 return types.LoadSetType[self._Entity.Type.ToString()] 7867 7868 @property 7869 def ReferenceTemperature(self) -> float: 7870 return self._Entity.ReferenceTemperature 7871 7872 @property 7873 def PressureOrTemperature(self) -> float: 7874 return self._Entity.PressureOrTemperature 7875 7876 @property 7877 def LimitFactor(self) -> float: 7878 return self._Entity.LimitFactor 7879 7880 @property 7881 def UltimateFactor(self) -> float: 7882 return self._Entity.UltimateFactor 7883 7884 @ReferenceTemperature.setter 7885 def ReferenceTemperature(self, value: float) -> None: 7886 self._Entity.ReferenceTemperature = value 7887 7888 @PressureOrTemperature.setter 7889 def PressureOrTemperature(self, value: float) -> None: 7890 self._Entity.PressureOrTemperature = value 7891 7892 @LimitFactor.setter 7893 def LimitFactor(self, value: float) -> None: 7894 self._Entity.LimitFactor = value 7895 7896 @UltimateFactor.setter 7897 def UltimateFactor(self, value: float) -> None: 7898 self._Entity.UltimateFactor = value
Represents an entity with an ID and Name.
Inherited Members
7901class LoadPropertyUserBeamRow(LoadPropertyUserRow): 7902 def __init__(self, loadPropertyUserBeamRow: _api.LoadPropertyUserBeamRow): 7903 self._Entity = loadPropertyUserBeamRow 7904 7905 @property 7906 def M1A(self) -> float: 7907 return self._Entity.M1A 7908 7909 @property 7910 def M2A(self) -> float: 7911 return self._Entity.M2A 7912 7913 @property 7914 def M1B(self) -> float: 7915 return self._Entity.M1B 7916 7917 @property 7918 def M2B(self) -> float: 7919 return self._Entity.M2B 7920 7921 @property 7922 def V1(self) -> float: 7923 return self._Entity.V1 7924 7925 @property 7926 def V2(self) -> float: 7927 return self._Entity.V2 7928 7929 @property 7930 def Axial(self) -> float: 7931 return self._Entity.Axial 7932 7933 @property 7934 def Torque(self) -> float: 7935 return self._Entity.Torque 7936 7937 @M1A.setter 7938 def M1A(self, value: float) -> None: 7939 self._Entity.M1A = value 7940 7941 @M2A.setter 7942 def M2A(self, value: float) -> None: 7943 self._Entity.M2A = value 7944 7945 @M1B.setter 7946 def M1B(self, value: float) -> None: 7947 self._Entity.M1B = value 7948 7949 @M2B.setter 7950 def M2B(self, value: float) -> None: 7951 self._Entity.M2B = value 7952 7953 @V1.setter 7954 def V1(self, value: float) -> None: 7955 self._Entity.V1 = value 7956 7957 @V2.setter 7958 def V2(self, value: float) -> None: 7959 self._Entity.V2 = value 7960 7961 @Axial.setter 7962 def Axial(self, value: float) -> None: 7963 self._Entity.Axial = value 7964 7965 @Torque.setter 7966 def Torque(self, value: float) -> None: 7967 self._Entity.Torque = value
Represents an entity with an ID and Name.
7970class LoadPropertyUserFeaBeamRow(LoadPropertyUserBeamRow): 7971 def __init__(self, loadPropertyUserFeaBeamRow: _api.LoadPropertyUserFeaBeamRow): 7972 self._Entity = loadPropertyUserFeaBeamRow 7973 7974 def SetName(self, name: str) -> None: 7975 return self._Entity.SetName(name)
Represents an entity with an ID and Name.
7978class LoadPropertyUserFeaBeamRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 7979 def __init__(self, loadPropertyUserFeaBeamRowBulkUpdater: _api.LoadPropertyUserFeaBeamRowBulkUpdater): 7980 self._Entity = loadPropertyUserFeaBeamRowBulkUpdater 7981 7982 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaBeamRow]) -> LoadPropertyUserFeaBeamRowBulkUpdater: 7983 itemsList = List[_api.LoadPropertyUserFeaBeamRow]() 7984 if items is not None: 7985 for thing in items: 7986 if thing is not None: 7987 itemsList.Add(thing._Entity) 7988 return LoadPropertyUserFeaBeamRowBulkUpdater(_api.LoadPropertyUserFeaBeamRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
7982 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaBeamRow]) -> LoadPropertyUserFeaBeamRowBulkUpdater: 7983 itemsList = List[_api.LoadPropertyUserFeaBeamRow]() 7984 if items is not None: 7985 for thing in items: 7986 if thing is not None: 7987 itemsList.Add(thing._Entity) 7988 return LoadPropertyUserFeaBeamRowBulkUpdater(_api.LoadPropertyUserFeaBeamRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
7991class LoadPropertyUserPanelJointRow(LoadPropertyUserRow): 7992 def __init__(self, loadPropertyUserPanelJointRow: _api.LoadPropertyUserPanelJointRow): 7993 self._Entity = loadPropertyUserPanelJointRow 7994 7995 @property 7996 def Nx(self) -> float: 7997 return self._Entity.Nx 7998 7999 @property 8000 def Ny(self) -> float: 8001 return self._Entity.Ny 8002 8003 @property 8004 def Nxy(self) -> float: 8005 return self._Entity.Nxy 8006 8007 @property 8008 def Mx(self) -> float: 8009 return self._Entity.Mx 8010 8011 @property 8012 def My(self) -> float: 8013 return self._Entity.My 8014 8015 @property 8016 def Mxy(self) -> float: 8017 return self._Entity.Mxy 8018 8019 @property 8020 def Qx(self) -> float: 8021 return self._Entity.Qx 8022 8023 @property 8024 def Qy(self) -> float: 8025 return self._Entity.Qy 8026 8027 @Nx.setter 8028 def Nx(self, value: float) -> None: 8029 self._Entity.Nx = value 8030 8031 @Ny.setter 8032 def Ny(self, value: float) -> None: 8033 self._Entity.Ny = value 8034 8035 @Nxy.setter 8036 def Nxy(self, value: float) -> None: 8037 self._Entity.Nxy = value 8038 8039 @Mx.setter 8040 def Mx(self, value: float) -> None: 8041 self._Entity.Mx = value 8042 8043 @My.setter 8044 def My(self, value: float) -> None: 8045 self._Entity.My = value 8046 8047 @Mxy.setter 8048 def Mxy(self, value: float) -> None: 8049 self._Entity.Mxy = value 8050 8051 @Qx.setter 8052 def Qx(self, value: float) -> None: 8053 self._Entity.Qx = value 8054 8055 @Qy.setter 8056 def Qy(self, value: float) -> None: 8057 self._Entity.Qy = value
Represents an entity with an ID and Name.
8060class LoadPropertyUserFeaJointRow(LoadPropertyUserPanelJointRow): 8061 def __init__(self, loadPropertyUserFeaJointRow: _api.LoadPropertyUserFeaJointRow): 8062 self._Entity = loadPropertyUserFeaJointRow 8063 8064 def SetName(self, name: str) -> None: 8065 return self._Entity.SetName(name)
Represents an entity with an ID and Name.
8068class LoadPropertyUserFeaJointRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8069 def __init__(self, loadPropertyUserFeaJointRowBulkUpdater: _api.LoadPropertyUserFeaJointRowBulkUpdater): 8070 self._Entity = loadPropertyUserFeaJointRowBulkUpdater 8071 8072 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaJointRow]) -> LoadPropertyUserFeaJointRowBulkUpdater: 8073 itemsList = List[_api.LoadPropertyUserFeaJointRow]() 8074 if items is not None: 8075 for thing in items: 8076 if thing is not None: 8077 itemsList.Add(thing._Entity) 8078 return LoadPropertyUserFeaJointRowBulkUpdater(_api.LoadPropertyUserFeaJointRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
8072 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaJointRow]) -> LoadPropertyUserFeaJointRowBulkUpdater: 8073 itemsList = List[_api.LoadPropertyUserFeaJointRow]() 8074 if items is not None: 8075 for thing in items: 8076 if thing is not None: 8077 itemsList.Add(thing._Entity) 8078 return LoadPropertyUserFeaJointRowBulkUpdater(_api.LoadPropertyUserFeaJointRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
8081class LoadPropertyUserFeaPanelRow(LoadPropertyUserPanelJointRow): 8082 def __init__(self, loadPropertyUserFeaPanelRow: _api.LoadPropertyUserFeaPanelRow): 8083 self._Entity = loadPropertyUserFeaPanelRow 8084 8085 def SetName(self, name: str) -> None: 8086 return self._Entity.SetName(name)
Represents an entity with an ID and Name.
8089class LoadPropertyUserFeaPanelRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8090 def __init__(self, loadPropertyUserFeaPanelRowBulkUpdater: _api.LoadPropertyUserFeaPanelRowBulkUpdater): 8091 self._Entity = loadPropertyUserFeaPanelRowBulkUpdater 8092 8093 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaPanelRow]) -> LoadPropertyUserFeaPanelRowBulkUpdater: 8094 itemsList = List[_api.LoadPropertyUserFeaPanelRow]() 8095 if items is not None: 8096 for thing in items: 8097 if thing is not None: 8098 itemsList.Add(thing._Entity) 8099 return LoadPropertyUserFeaPanelRowBulkUpdater(_api.LoadPropertyUserFeaPanelRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
8093 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaPanelRow]) -> LoadPropertyUserFeaPanelRowBulkUpdater: 8094 itemsList = List[_api.LoadPropertyUserFeaPanelRow]() 8095 if items is not None: 8096 for thing in items: 8097 if thing is not None: 8098 itemsList.Add(thing._Entity) 8099 return LoadPropertyUserFeaPanelRowBulkUpdater(_api.LoadPropertyUserFeaPanelRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
8102class LoadPropertyUserGeneralBeamRow(LoadPropertyUserBeamRow): 8103 def __init__(self, loadPropertyUserGeneralBeamRow: _api.LoadPropertyUserGeneralBeamRow): 8104 self._Entity = loadPropertyUserGeneralBeamRow 8105 8106 @property 8107 def M1A(self) -> float: 8108 return self._Entity.M1A 8109 8110 @property 8111 def M2A(self) -> float: 8112 return self._Entity.M2A 8113 8114 @property 8115 def M1B(self) -> float: 8116 return self._Entity.M1B 8117 8118 @property 8119 def M2B(self) -> float: 8120 return self._Entity.M2B 8121 8122 @property 8123 def V1(self) -> float: 8124 return self._Entity.V1 8125 8126 @property 8127 def V2(self) -> float: 8128 return self._Entity.V2 8129 8130 @property 8131 def Axial(self) -> float: 8132 return self._Entity.Axial 8133 8134 @property 8135 def Torque(self) -> float: 8136 return self._Entity.Torque 8137 8138 @property 8139 def M1AType(self) -> types.BoundaryConditionType: 8140 return types.BoundaryConditionType[self._Entity.M1AType.ToString()] 8141 8142 @property 8143 def M2AType(self) -> types.BoundaryConditionType: 8144 return types.BoundaryConditionType[self._Entity.M2AType.ToString()] 8145 8146 @property 8147 def M1BType(self) -> types.BoundaryConditionType: 8148 return types.BoundaryConditionType[self._Entity.M1BType.ToString()] 8149 8150 @property 8151 def M2BType(self) -> types.BoundaryConditionType: 8152 return types.BoundaryConditionType[self._Entity.M2BType.ToString()] 8153 8154 @property 8155 def V1Type(self) -> types.BoundaryConditionType: 8156 return types.BoundaryConditionType[self._Entity.V1Type.ToString()] 8157 8158 @property 8159 def V2Type(self) -> types.BoundaryConditionType: 8160 return types.BoundaryConditionType[self._Entity.V2Type.ToString()] 8161 8162 @property 8163 def AxialType(self) -> types.BoundaryConditionType: 8164 return types.BoundaryConditionType[self._Entity.AxialType.ToString()] 8165 8166 @property 8167 def TorqueType(self) -> types.BoundaryConditionType: 8168 return types.BoundaryConditionType[self._Entity.TorqueType.ToString()] 8169 8170 @M1A.setter 8171 def M1A(self, value: float) -> None: 8172 self._Entity.M1A = value 8173 8174 @M2A.setter 8175 def M2A(self, value: float) -> None: 8176 self._Entity.M2A = value 8177 8178 @M1B.setter 8179 def M1B(self, value: float) -> None: 8180 self._Entity.M1B = value 8181 8182 @M2B.setter 8183 def M2B(self, value: float) -> None: 8184 self._Entity.M2B = value 8185 8186 @V1.setter 8187 def V1(self, value: float) -> None: 8188 self._Entity.V1 = value 8189 8190 @V2.setter 8191 def V2(self, value: float) -> None: 8192 self._Entity.V2 = value 8193 8194 @Axial.setter 8195 def Axial(self, value: float) -> None: 8196 self._Entity.Axial = value 8197 8198 @Torque.setter 8199 def Torque(self, value: float) -> None: 8200 self._Entity.Torque = value
Represents an entity with an ID and Name.
8203class LoadPropertyUserGeneralBeamRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8204 def __init__(self, loadPropertyUserGeneralBeamRowBulkUpdater: _api.LoadPropertyUserGeneralBeamRowBulkUpdater): 8205 self._Entity = loadPropertyUserGeneralBeamRowBulkUpdater 8206 8207 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserGeneralBeamRow]) -> LoadPropertyUserGeneralBeamRowBulkUpdater: 8208 itemsList = List[_api.LoadPropertyUserGeneralBeamRow]() 8209 if items is not None: 8210 for thing in items: 8211 if thing is not None: 8212 itemsList.Add(thing._Entity) 8213 return LoadPropertyUserGeneralBeamRowBulkUpdater(_api.LoadPropertyUserGeneralBeamRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
8207 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserGeneralBeamRow]) -> LoadPropertyUserGeneralBeamRowBulkUpdater: 8208 itemsList = List[_api.LoadPropertyUserGeneralBeamRow]() 8209 if items is not None: 8210 for thing in items: 8211 if thing is not None: 8212 itemsList.Add(thing._Entity) 8213 return LoadPropertyUserGeneralBeamRowBulkUpdater(_api.LoadPropertyUserGeneralBeamRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
8216class LoadPropertyUserGeneralPanelRow(LoadPropertyUserPanelJointRow): 8217 def __init__(self, loadPropertyUserGeneralPanelRow: _api.LoadPropertyUserGeneralPanelRow): 8218 self._Entity = loadPropertyUserGeneralPanelRow 8219 8220 @property 8221 def Nx(self) -> float: 8222 return self._Entity.Nx 8223 8224 @property 8225 def Ny(self) -> float: 8226 return self._Entity.Ny 8227 8228 @property 8229 def Nxy(self) -> float: 8230 return self._Entity.Nxy 8231 8232 @property 8233 def Mx(self) -> float: 8234 return self._Entity.Mx 8235 8236 @property 8237 def My(self) -> float: 8238 return self._Entity.My 8239 8240 @property 8241 def Mxy(self) -> float: 8242 return self._Entity.Mxy 8243 8244 @property 8245 def Qx(self) -> float: 8246 return self._Entity.Qx 8247 8248 @property 8249 def Qy(self) -> float: 8250 return self._Entity.Qy 8251 8252 @property 8253 def NxType(self) -> types.BoundaryConditionType: 8254 return types.BoundaryConditionType[self._Entity.NxType.ToString()] 8255 8256 @property 8257 def NyType(self) -> types.BoundaryConditionType: 8258 return types.BoundaryConditionType[self._Entity.NyType.ToString()] 8259 8260 @property 8261 def NxyType(self) -> types.BoundaryConditionType: 8262 return types.BoundaryConditionType[self._Entity.NxyType.ToString()] 8263 8264 @property 8265 def MxType(self) -> types.BoundaryConditionType: 8266 return types.BoundaryConditionType[self._Entity.MxType.ToString()] 8267 8268 @property 8269 def MyType(self) -> types.BoundaryConditionType: 8270 return types.BoundaryConditionType[self._Entity.MyType.ToString()] 8271 8272 @property 8273 def MxyType(self) -> types.BoundaryConditionType: 8274 return types.BoundaryConditionType[self._Entity.MxyType.ToString()] 8275 8276 @property 8277 def QxType(self) -> types.BoundaryConditionType: 8278 return types.BoundaryConditionType[self._Entity.QxType.ToString()] 8279 8280 @property 8281 def QyType(self) -> types.BoundaryConditionType: 8282 return types.BoundaryConditionType[self._Entity.QyType.ToString()] 8283 8284 @Nx.setter 8285 def Nx(self, value: float) -> None: 8286 self._Entity.Nx = value 8287 8288 @Ny.setter 8289 def Ny(self, value: float) -> None: 8290 self._Entity.Ny = value 8291 8292 @Nxy.setter 8293 def Nxy(self, value: float) -> None: 8294 self._Entity.Nxy = value 8295 8296 @Mx.setter 8297 def Mx(self, value: float) -> None: 8298 self._Entity.Mx = value 8299 8300 @My.setter 8301 def My(self, value: float) -> None: 8302 self._Entity.My = value 8303 8304 @Mxy.setter 8305 def Mxy(self, value: float) -> None: 8306 self._Entity.Mxy = value 8307 8308 @Qx.setter 8309 def Qx(self, value: float) -> None: 8310 self._Entity.Qx = value 8311 8312 @Qy.setter 8313 def Qy(self, value: float) -> None: 8314 self._Entity.Qy = value
Represents an entity with an ID and Name.
8317class LoadPropertyUserGeneralPanelRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8318 def __init__(self, loadPropertyUserGeneralPanelRowBulkUpdater: _api.LoadPropertyUserGeneralPanelRowBulkUpdater): 8319 self._Entity = loadPropertyUserGeneralPanelRowBulkUpdater 8320 8321 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserGeneralPanelRow]) -> LoadPropertyUserGeneralPanelRowBulkUpdater: 8322 itemsList = List[_api.LoadPropertyUserGeneralPanelRow]() 8323 if items is not None: 8324 for thing in items: 8325 if thing is not None: 8326 itemsList.Add(thing._Entity) 8327 return LoadPropertyUserGeneralPanelRowBulkUpdater(_api.LoadPropertyUserGeneralPanelRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
8321 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserGeneralPanelRow]) -> LoadPropertyUserGeneralPanelRowBulkUpdater: 8322 itemsList = List[_api.LoadPropertyUserGeneralPanelRow]() 8323 if items is not None: 8324 for thing in items: 8325 if thing is not None: 8326 itemsList.Add(thing._Entity) 8327 return LoadPropertyUserGeneralPanelRowBulkUpdater(_api.LoadPropertyUserGeneralPanelRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
8330class LoadPropertyFea(LoadProperty): 8331 def __init__(self, loadPropertyFea: _api.LoadPropertyFea): 8332 self._Entity = loadPropertyFea 8333 8334 @property 8335 def HasNx(self) -> bool: 8336 return self._Entity.HasNx 8337 8338 @property 8339 def HasNy(self) -> bool: 8340 return self._Entity.HasNy 8341 8342 @property 8343 def HasNxy(self) -> bool: 8344 return self._Entity.HasNxy 8345 8346 @property 8347 def HasMx(self) -> bool: 8348 return self._Entity.HasMx 8349 8350 @property 8351 def HasMy(self) -> bool: 8352 return self._Entity.HasMy 8353 8354 @property 8355 def HasMxy(self) -> bool: 8356 return self._Entity.HasMxy 8357 8358 @property 8359 def HasQx(self) -> bool: 8360 return self._Entity.HasQx 8361 8362 @property 8363 def HasQy(self) -> bool: 8364 return self._Entity.HasQy 8365 8366 @property 8367 def HasM1a(self) -> bool: 8368 return self._Entity.HasM1a 8369 8370 @property 8371 def HasM1b(self) -> bool: 8372 return self._Entity.HasM1b 8373 8374 @property 8375 def M2a(self) -> bool: 8376 return self._Entity.M2a 8377 8378 @property 8379 def V1(self) -> bool: 8380 return self._Entity.V1 8381 8382 @property 8383 def V2(self) -> bool: 8384 return self._Entity.V2 8385 8386 @property 8387 def Axial(self) -> bool: 8388 return self._Entity.Axial 8389 8390 @property 8391 def Torque(self) -> bool: 8392 return self._Entity.Torque 8393 8394 @property 8395 def Tension(self) -> bool: 8396 return self._Entity.Tension 8397 8398 @property 8399 def Shear(self) -> bool: 8400 return self._Entity.Shear 8401 8402 @property 8403 def Moment(self) -> bool: 8404 return self._Entity.Moment 8405 8406 @HasNx.setter 8407 def HasNx(self, value: bool) -> None: 8408 self._Entity.HasNx = value 8409 8410 @HasNy.setter 8411 def HasNy(self, value: bool) -> None: 8412 self._Entity.HasNy = value 8413 8414 @HasNxy.setter 8415 def HasNxy(self, value: bool) -> None: 8416 self._Entity.HasNxy = value 8417 8418 @HasMx.setter 8419 def HasMx(self, value: bool) -> None: 8420 self._Entity.HasMx = value 8421 8422 @HasMy.setter 8423 def HasMy(self, value: bool) -> None: 8424 self._Entity.HasMy = value 8425 8426 @HasMxy.setter 8427 def HasMxy(self, value: bool) -> None: 8428 self._Entity.HasMxy = value 8429 8430 @HasQx.setter 8431 def HasQx(self, value: bool) -> None: 8432 self._Entity.HasQx = value 8433 8434 @HasQy.setter 8435 def HasQy(self, value: bool) -> None: 8436 self._Entity.HasQy = value 8437 8438 @HasM1a.setter 8439 def HasM1a(self, value: bool) -> None: 8440 self._Entity.HasM1a = value 8441 8442 @HasM1b.setter 8443 def HasM1b(self, value: bool) -> None: 8444 self._Entity.HasM1b = value 8445 8446 @M2a.setter 8447 def M2a(self, value: bool) -> None: 8448 self._Entity.M2a = value 8449 8450 @V1.setter 8451 def V1(self, value: bool) -> None: 8452 self._Entity.V1 = value 8453 8454 @V2.setter 8455 def V2(self, value: bool) -> None: 8456 self._Entity.V2 = value 8457 8458 @Axial.setter 8459 def Axial(self, value: bool) -> None: 8460 self._Entity.Axial = value 8461 8462 @Torque.setter 8463 def Torque(self, value: bool) -> None: 8464 self._Entity.Torque = value 8465 8466 @Tension.setter 8467 def Tension(self, value: bool) -> None: 8468 self._Entity.Tension = value 8469 8470 @Shear.setter 8471 def Shear(self, value: bool) -> None: 8472 self._Entity.Shear = value 8473 8474 @Moment.setter 8475 def Moment(self, value: bool) -> None: 8476 self._Entity.Moment = value
Represents an entity with an ID and Name.
Inherited Members
8479class LoadPropertyAverage(LoadPropertyFea): 8480 def __init__(self, loadPropertyAverage: _api.LoadPropertyAverage): 8481 self._Entity = loadPropertyAverage 8482 8483 @property 8484 def ElementType(self) -> types.LoadPropertyAverageElementType: 8485 return types.LoadPropertyAverageElementType[self._Entity.ElementType.ToString()] 8486 8487 @ElementType.setter 8488 def ElementType(self, value: types.LoadPropertyAverageElementType) -> None: 8489 self._Entity.ElementType = _types.LoadPropertyAverageElementType(value.value)
Represents an entity with an ID and Name.
8492class LoadPropertyElementBased(LoadPropertyFea): 8493 def __init__(self, loadPropertyElementBased: _api.LoadPropertyElementBased): 8494 self._Entity = loadPropertyElementBased
Represents an entity with an ID and Name.
8497class LoadPropertyNeighborAverage(LoadPropertyFea): 8498 def __init__(self, loadPropertyNeighborAverage: _api.LoadPropertyNeighborAverage): 8499 self._Entity = loadPropertyNeighborAverage 8500 8501 @property 8502 def NumberOfNeighborsPerSide(self) -> int: 8503 return self._Entity.NumberOfNeighborsPerSide 8504 8505 @NumberOfNeighborsPerSide.setter 8506 def NumberOfNeighborsPerSide(self, value: int) -> None: 8507 self._Entity.NumberOfNeighborsPerSide = value
Represents an entity with an ID and Name.
8510class LoadPropertyPeakLoad(LoadPropertyFea): 8511 def __init__(self, loadPropertyPeakLoad: _api.LoadPropertyPeakLoad): 8512 self._Entity = loadPropertyPeakLoad 8513 8514 @property 8515 def ElementScope(self) -> types.LoadPropertyPeakElementScope: 8516 return types.LoadPropertyPeakElementScope[self._Entity.ElementScope.ToString()] 8517 8518 @ElementScope.setter 8519 def ElementScope(self, value: types.LoadPropertyPeakElementScope) -> None: 8520 self._Entity.ElementScope = _types.LoadPropertyPeakElementScope(value.value)
Represents an entity with an ID and Name.
8523class LoadPropertyStatistical(LoadPropertyFea): 8524 def __init__(self, loadPropertyStatistical: _api.LoadPropertyStatistical): 8525 self._Entity = loadPropertyStatistical 8526 8527 @property 8528 def NSigma(self) -> int: 8529 return self._Entity.NSigma 8530 8531 @NSigma.setter 8532 def NSigma(self, value: int) -> None: 8533 self._Entity.NSigma = value
Represents an entity with an ID and Name.
8536class LoadPropertyUserFeaRowCol(IdNameEntityCol, Generic[T]): 8537 def __init__(self, loadPropertyUserFeaRowCol: _api.LoadPropertyUserFeaRowCol): 8538 self._Entity = loadPropertyUserFeaRowCol 8539 self._CollectedClass = T 8540 8541 @property 8542 def LoadPropertyUserFeaRowColList(self) -> tuple[T]: 8543 if self._Entity.Count() <= 0: 8544 return () 8545 thisClass = type(self._Entity._items[0]).__name__ 8546 givenClass = T 8547 for subclass in T.__subclasses__(): 8548 if subclass.__name__ == thisClass: 8549 givenClass = subclass 8550 return tuple([givenClass(loadPropertyUserFeaRowCol) for loadPropertyUserFeaRowCol in self._Entity]) 8551 8552 def AddScenario(self, name: str = None) -> T: 8553 return self._Entity.AddScenario(name) 8554 8555 @overload 8556 def DeleteScenario(self, scenarioId: int) -> bool: ... 8557 8558 @overload 8559 def DeleteScenario(self, scenarioName: str) -> bool: ... 8560 8561 @overload 8562 def Get(self, name: str) -> T: ... 8563 8564 @overload 8565 def Get(self, id: int) -> T: ... 8566 8567 def DeleteScenario(self, item1 = None) -> bool: 8568 if isinstance(item1, int): 8569 return self._Entity.DeleteScenario(item1) 8570 8571 if isinstance(item1, str): 8572 return self._Entity.DeleteScenario(item1) 8573 8574 return self._Entity.DeleteScenario(item1) 8575 8576 def Get(self, item1 = None) -> T: 8577 if isinstance(item1, str): 8578 return super().Get(item1) 8579 8580 if isinstance(item1, int): 8581 return super().Get(item1) 8582 8583 return self._Entity.Get(item1) 8584 8585 def __getitem__(self, index: int): 8586 return self.LoadPropertyUserFeaRowColList[index] 8587 8588 def __iter__(self): 8589 yield from self.LoadPropertyUserFeaRowColList 8590 8591 def __len__(self): 8592 return len(self.LoadPropertyUserFeaRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
8541 @property 8542 def LoadPropertyUserFeaRowColList(self) -> tuple[T]: 8543 if self._Entity.Count() <= 0: 8544 return () 8545 thisClass = type(self._Entity._items[0]).__name__ 8546 givenClass = T 8547 for subclass in T.__subclasses__(): 8548 if subclass.__name__ == thisClass: 8549 givenClass = subclass 8550 return tuple([givenClass(loadPropertyUserFeaRowCol) for loadPropertyUserFeaRowCol in self._Entity])
Inherited Members
8595class LoadPropertyUserFeaBeamRowCol(LoadPropertyUserFeaRowCol[LoadPropertyUserFeaBeamRow]): 8596 def __init__(self, loadPropertyUserFeaBeamRowCol: _api.LoadPropertyUserFeaBeamRowCol): 8597 self._Entity = loadPropertyUserFeaBeamRowCol 8598 self._CollectedClass = LoadPropertyUserFeaBeamRow 8599 8600 @property 8601 def LoadPropertyUserFeaBeamRowColList(self) -> tuple[LoadPropertyUserFeaBeamRow]: 8602 return tuple([LoadPropertyUserFeaBeamRow(loadPropertyUserFeaBeamRowCol) for loadPropertyUserFeaBeamRowCol in self._Entity]) 8603 8604 @overload 8605 def DeleteScenario(self, scenarioId: int) -> bool: ... 8606 8607 @overload 8608 def DeleteScenario(self, scenarioName: str) -> bool: ... 8609 8610 @overload 8611 def Get(self, name: str) -> LoadPropertyUserFeaBeamRow: ... 8612 8613 @overload 8614 def Get(self, id: int) -> LoadPropertyUserFeaBeamRow: ... 8615 8616 def DeleteScenario(self, item1 = None) -> bool: 8617 if isinstance(item1, int): 8618 return bool(super().DeleteScenario(item1)) 8619 8620 if isinstance(item1, str): 8621 return bool(super().DeleteScenario(item1)) 8622 8623 return self._Entity.DeleteScenario(item1) 8624 8625 def Get(self, item1 = None) -> LoadPropertyUserFeaBeamRow: 8626 if isinstance(item1, str): 8627 return LoadPropertyUserFeaBeamRow(super().Get(item1)) 8628 8629 if isinstance(item1, int): 8630 return LoadPropertyUserFeaBeamRow(super().Get(item1)) 8631 8632 return self._Entity.Get(item1) 8633 8634 def __getitem__(self, index: int): 8635 return self.LoadPropertyUserFeaBeamRowColList[index] 8636 8637 def __iter__(self): 8638 yield from self.LoadPropertyUserFeaBeamRowColList 8639 8640 def __len__(self): 8641 return len(self.LoadPropertyUserFeaBeamRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
8644class LoadPropertyUserFeaBeam(LoadProperty): 8645 def __init__(self, loadPropertyUserFeaBeam: _api.LoadPropertyUserFeaBeam): 8646 self._Entity = loadPropertyUserFeaBeam 8647 8648 @property 8649 def UserFeaRows(self) -> LoadPropertyUserFeaBeamRowCol: 8650 result = self._Entity.UserFeaRows 8651 return LoadPropertyUserFeaBeamRowCol(result) if result is not None else None
Represents an entity with an ID and Name.
Inherited Members
8654class LoadPropertyUserFeaJointRowCol(LoadPropertyUserFeaRowCol[LoadPropertyUserFeaJointRow]): 8655 def __init__(self, loadPropertyUserFeaJointRowCol: _api.LoadPropertyUserFeaJointRowCol): 8656 self._Entity = loadPropertyUserFeaJointRowCol 8657 self._CollectedClass = LoadPropertyUserFeaJointRow 8658 8659 @property 8660 def LoadPropertyUserFeaJointRowColList(self) -> tuple[LoadPropertyUserFeaJointRow]: 8661 return tuple([LoadPropertyUserFeaJointRow(loadPropertyUserFeaJointRowCol) for loadPropertyUserFeaJointRowCol in self._Entity]) 8662 8663 @overload 8664 def DeleteScenario(self, scenarioId: int) -> bool: ... 8665 8666 @overload 8667 def DeleteScenario(self, scenarioName: str) -> bool: ... 8668 8669 @overload 8670 def Get(self, name: str) -> LoadPropertyUserFeaJointRow: ... 8671 8672 @overload 8673 def Get(self, id: int) -> LoadPropertyUserFeaJointRow: ... 8674 8675 def DeleteScenario(self, item1 = None) -> bool: 8676 if isinstance(item1, int): 8677 return bool(super().DeleteScenario(item1)) 8678 8679 if isinstance(item1, str): 8680 return bool(super().DeleteScenario(item1)) 8681 8682 return self._Entity.DeleteScenario(item1) 8683 8684 def Get(self, item1 = None) -> LoadPropertyUserFeaJointRow: 8685 if isinstance(item1, str): 8686 return LoadPropertyUserFeaJointRow(super().Get(item1)) 8687 8688 if isinstance(item1, int): 8689 return LoadPropertyUserFeaJointRow(super().Get(item1)) 8690 8691 return self._Entity.Get(item1) 8692 8693 def __getitem__(self, index: int): 8694 return self.LoadPropertyUserFeaJointRowColList[index] 8695 8696 def __iter__(self): 8697 yield from self.LoadPropertyUserFeaJointRowColList 8698 8699 def __len__(self): 8700 return len(self.LoadPropertyUserFeaJointRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
8703class LoadPropertyUserFeaJoint(LoadProperty): 8704 def __init__(self, loadPropertyUserFeaJoint: _api.LoadPropertyUserFeaJoint): 8705 self._Entity = loadPropertyUserFeaJoint 8706 8707 @property 8708 def UserFeaRows(self) -> LoadPropertyUserFeaJointRowCol: 8709 result = self._Entity.UserFeaRows 8710 return LoadPropertyUserFeaJointRowCol(result) if result is not None else None
Represents an entity with an ID and Name.
Inherited Members
8713class LoadPropertyUserFeaPanelRowCol(LoadPropertyUserFeaRowCol[LoadPropertyUserFeaPanelRow]): 8714 def __init__(self, loadPropertyUserFeaPanelRowCol: _api.LoadPropertyUserFeaPanelRowCol): 8715 self._Entity = loadPropertyUserFeaPanelRowCol 8716 self._CollectedClass = LoadPropertyUserFeaPanelRow 8717 8718 @property 8719 def LoadPropertyUserFeaPanelRowColList(self) -> tuple[LoadPropertyUserFeaPanelRow]: 8720 return tuple([LoadPropertyUserFeaPanelRow(loadPropertyUserFeaPanelRowCol) for loadPropertyUserFeaPanelRowCol in self._Entity]) 8721 8722 @overload 8723 def DeleteScenario(self, scenarioId: int) -> bool: ... 8724 8725 @overload 8726 def DeleteScenario(self, scenarioName: str) -> bool: ... 8727 8728 @overload 8729 def Get(self, name: str) -> LoadPropertyUserFeaPanelRow: ... 8730 8731 @overload 8732 def Get(self, id: int) -> LoadPropertyUserFeaPanelRow: ... 8733 8734 def DeleteScenario(self, item1 = None) -> bool: 8735 if isinstance(item1, int): 8736 return bool(super().DeleteScenario(item1)) 8737 8738 if isinstance(item1, str): 8739 return bool(super().DeleteScenario(item1)) 8740 8741 return self._Entity.DeleteScenario(item1) 8742 8743 def Get(self, item1 = None) -> LoadPropertyUserFeaPanelRow: 8744 if isinstance(item1, str): 8745 return LoadPropertyUserFeaPanelRow(super().Get(item1)) 8746 8747 if isinstance(item1, int): 8748 return LoadPropertyUserFeaPanelRow(super().Get(item1)) 8749 8750 return self._Entity.Get(item1) 8751 8752 def __getitem__(self, index: int): 8753 return self.LoadPropertyUserFeaPanelRowColList[index] 8754 8755 def __iter__(self): 8756 yield from self.LoadPropertyUserFeaPanelRowColList 8757 8758 def __len__(self): 8759 return len(self.LoadPropertyUserFeaPanelRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
8762class LoadPropertyUserFeaPanel(LoadProperty): 8763 def __init__(self, loadPropertyUserFeaPanel: _api.LoadPropertyUserFeaPanel): 8764 self._Entity = loadPropertyUserFeaPanel 8765 8766 @property 8767 def UserFeaRows(self) -> LoadPropertyUserFeaPanelRowCol: 8768 result = self._Entity.UserFeaRows 8769 return LoadPropertyUserFeaPanelRowCol(result) if result is not None else None 8770 8771 def SetIsZeroCurvature(self, isZeroCurvature: bool) -> None: 8772 return self._Entity.SetIsZeroCurvature(isZeroCurvature)
Represents an entity with an ID and Name.
Inherited Members
8775class LoadPropertyUserGeneralDoubleRow(IdNameEntity): 8776 def __init__(self, loadPropertyUserGeneralDoubleRow: _api.LoadPropertyUserGeneralDoubleRow): 8777 self._Entity = loadPropertyUserGeneralDoubleRow 8778 8779 @property 8780 def MechanicalRow(self) -> LoadPropertyUserRow: 8781 thisClass = type(self._Entity.MechanicalRow).__name__ 8782 givenClass = LoadPropertyUserRow 8783 for subclass in LoadPropertyUserRow.__subclasses__(): 8784 if subclass.__name__ == thisClass: 8785 givenClass = subclass 8786 result = self._Entity.MechanicalRow 8787 return givenClass(result) if result is not None else None 8788 8789 @property 8790 def ThermalRow(self) -> LoadPropertyUserRow: 8791 thisClass = type(self._Entity.ThermalRow).__name__ 8792 givenClass = LoadPropertyUserRow 8793 for subclass in LoadPropertyUserRow.__subclasses__(): 8794 if subclass.__name__ == thisClass: 8795 givenClass = subclass 8796 result = self._Entity.ThermalRow 8797 return givenClass(result) if result is not None else None 8798 8799 def SetName(self, name: str) -> None: 8800 return self._Entity.SetName(name)
Represents an entity with an ID and Name.
8779 @property 8780 def MechanicalRow(self) -> LoadPropertyUserRow: 8781 thisClass = type(self._Entity.MechanicalRow).__name__ 8782 givenClass = LoadPropertyUserRow 8783 for subclass in LoadPropertyUserRow.__subclasses__(): 8784 if subclass.__name__ == thisClass: 8785 givenClass = subclass 8786 result = self._Entity.MechanicalRow 8787 return givenClass(result) if result is not None else None
8789 @property 8790 def ThermalRow(self) -> LoadPropertyUserRow: 8791 thisClass = type(self._Entity.ThermalRow).__name__ 8792 givenClass = LoadPropertyUserRow 8793 for subclass in LoadPropertyUserRow.__subclasses__(): 8794 if subclass.__name__ == thisClass: 8795 givenClass = subclass 8796 result = self._Entity.ThermalRow 8797 return givenClass(result) if result is not None else None
Inherited Members
8803class LoadPropertyUserGeneralBeamDoubleRow(LoadPropertyUserGeneralDoubleRow): 8804 def __init__(self, loadPropertyUserGeneralBeamDoubleRow: _api.LoadPropertyUserGeneralBeamDoubleRow): 8805 self._Entity = loadPropertyUserGeneralBeamDoubleRow 8806 8807 @property 8808 def MechanicalRow(self) -> LoadPropertyUserRow: 8809 thisClass = type(self._Entity.MechanicalRow).__name__ 8810 givenClass = LoadPropertyUserRow 8811 for subclass in LoadPropertyUserRow.__subclasses__(): 8812 if subclass.__name__ == thisClass: 8813 givenClass = subclass 8814 result = self._Entity.MechanicalRow 8815 return givenClass(result) if result is not None else None 8816 8817 @property 8818 def ThermalRow(self) -> LoadPropertyUserRow: 8819 thisClass = type(self._Entity.ThermalRow).__name__ 8820 givenClass = LoadPropertyUserRow 8821 for subclass in LoadPropertyUserRow.__subclasses__(): 8822 if subclass.__name__ == thisClass: 8823 givenClass = subclass 8824 result = self._Entity.ThermalRow 8825 return givenClass(result) if result is not None else None 8826 8827 @property 8828 def M1AType(self) -> types.BoundaryConditionType: 8829 return types.BoundaryConditionType[self._Entity.M1AType.ToString()] 8830 8831 @property 8832 def M2AType(self) -> types.BoundaryConditionType: 8833 return types.BoundaryConditionType[self._Entity.M2AType.ToString()] 8834 8835 @property 8836 def M1BType(self) -> types.BoundaryConditionType: 8837 return types.BoundaryConditionType[self._Entity.M1BType.ToString()] 8838 8839 @property 8840 def M2BType(self) -> types.BoundaryConditionType: 8841 return types.BoundaryConditionType[self._Entity.M2BType.ToString()] 8842 8843 @property 8844 def V1Type(self) -> types.BoundaryConditionType: 8845 return types.BoundaryConditionType[self._Entity.V1Type.ToString()] 8846 8847 @property 8848 def V2Type(self) -> types.BoundaryConditionType: 8849 return types.BoundaryConditionType[self._Entity.V2Type.ToString()] 8850 8851 @property 8852 def AxialType(self) -> types.BoundaryConditionType: 8853 return types.BoundaryConditionType[self._Entity.AxialType.ToString()] 8854 8855 @property 8856 def TorqueType(self) -> types.BoundaryConditionType: 8857 return types.BoundaryConditionType[self._Entity.TorqueType.ToString()] 8858 8859 def SetM1AType(self, type: types.BoundaryConditionType) -> None: 8860 return self._Entity.SetM1AType(_types.BoundaryConditionType(type.value)) 8861 8862 def SetM2AType(self, type: types.BoundaryConditionType) -> None: 8863 return self._Entity.SetM2AType(_types.BoundaryConditionType(type.value)) 8864 8865 def SetM1BType(self, type: types.BoundaryConditionType) -> None: 8866 return self._Entity.SetM1BType(_types.BoundaryConditionType(type.value)) 8867 8868 def SetM2BType(self, type: types.BoundaryConditionType) -> None: 8869 return self._Entity.SetM2BType(_types.BoundaryConditionType(type.value)) 8870 8871 def SetV1Type(self, type: types.BoundaryConditionType) -> None: 8872 return self._Entity.SetV1Type(_types.BoundaryConditionType(type.value)) 8873 8874 def SetV2Type(self, type: types.BoundaryConditionType) -> None: 8875 return self._Entity.SetV2Type(_types.BoundaryConditionType(type.value)) 8876 8877 def SetAxialType(self, type: types.BoundaryConditionType) -> None: 8878 return self._Entity.SetAxialType(_types.BoundaryConditionType(type.value)) 8879 8880 def SetTorqueType(self, type: types.BoundaryConditionType) -> None: 8881 return self._Entity.SetTorqueType(_types.BoundaryConditionType(type.value))
Represents an entity with an ID and Name.
8807 @property 8808 def MechanicalRow(self) -> LoadPropertyUserRow: 8809 thisClass = type(self._Entity.MechanicalRow).__name__ 8810 givenClass = LoadPropertyUserRow 8811 for subclass in LoadPropertyUserRow.__subclasses__(): 8812 if subclass.__name__ == thisClass: 8813 givenClass = subclass 8814 result = self._Entity.MechanicalRow 8815 return givenClass(result) if result is not None else None
8817 @property 8818 def ThermalRow(self) -> LoadPropertyUserRow: 8819 thisClass = type(self._Entity.ThermalRow).__name__ 8820 givenClass = LoadPropertyUserRow 8821 for subclass in LoadPropertyUserRow.__subclasses__(): 8822 if subclass.__name__ == thisClass: 8823 givenClass = subclass 8824 result = self._Entity.ThermalRow 8825 return givenClass(result) if result is not None else None
Inherited Members
8884class LoadPropertyUserGeneralRowCol(IdNameEntityCol, Generic[T]): 8885 def __init__(self, loadPropertyUserGeneralRowCol: _api.LoadPropertyUserGeneralRowCol): 8886 self._Entity = loadPropertyUserGeneralRowCol 8887 self._CollectedClass = T 8888 8889 @property 8890 def LoadPropertyUserGeneralRowColList(self) -> tuple[T]: 8891 if self._Entity.Count() <= 0: 8892 return () 8893 thisClass = type(self._Entity._items[0]).__name__ 8894 givenClass = T 8895 for subclass in T.__subclasses__(): 8896 if subclass.__name__ == thisClass: 8897 givenClass = subclass 8898 return tuple([givenClass(loadPropertyUserGeneralRowCol) for loadPropertyUserGeneralRowCol in self._Entity]) 8899 8900 def AddScenario(self, name: str = None) -> T: 8901 return self._Entity.AddScenario(name) 8902 8903 @overload 8904 def DeleteScenario(self, scenarioId: int) -> bool: ... 8905 8906 @overload 8907 def DeleteScenario(self, scenarioName: str) -> bool: ... 8908 8909 @overload 8910 def Get(self, name: str) -> T: ... 8911 8912 @overload 8913 def Get(self, id: int) -> T: ... 8914 8915 def DeleteScenario(self, item1 = None) -> bool: 8916 if isinstance(item1, int): 8917 return self._Entity.DeleteScenario(item1) 8918 8919 if isinstance(item1, str): 8920 return self._Entity.DeleteScenario(item1) 8921 8922 return self._Entity.DeleteScenario(item1) 8923 8924 def Get(self, item1 = None) -> T: 8925 if isinstance(item1, str): 8926 return super().Get(item1) 8927 8928 if isinstance(item1, int): 8929 return super().Get(item1) 8930 8931 return self._Entity.Get(item1) 8932 8933 def __getitem__(self, index: int): 8934 return self.LoadPropertyUserGeneralRowColList[index] 8935 8936 def __iter__(self): 8937 yield from self.LoadPropertyUserGeneralRowColList 8938 8939 def __len__(self): 8940 return len(self.LoadPropertyUserGeneralRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
8889 @property 8890 def LoadPropertyUserGeneralRowColList(self) -> tuple[T]: 8891 if self._Entity.Count() <= 0: 8892 return () 8893 thisClass = type(self._Entity._items[0]).__name__ 8894 givenClass = T 8895 for subclass in T.__subclasses__(): 8896 if subclass.__name__ == thisClass: 8897 givenClass = subclass 8898 return tuple([givenClass(loadPropertyUserGeneralRowCol) for loadPropertyUserGeneralRowCol in self._Entity])
Inherited Members
8943class LoadPropertyUserGeneralBeamRowCol(LoadPropertyUserGeneralRowCol[LoadPropertyUserGeneralBeamDoubleRow]): 8944 def __init__(self, loadPropertyUserGeneralBeamRowCol: _api.LoadPropertyUserGeneralBeamRowCol): 8945 self._Entity = loadPropertyUserGeneralBeamRowCol 8946 self._CollectedClass = LoadPropertyUserGeneralBeamDoubleRow 8947 8948 @property 8949 def LoadPropertyUserGeneralBeamRowColList(self) -> tuple[LoadPropertyUserGeneralBeamDoubleRow]: 8950 return tuple([LoadPropertyUserGeneralBeamDoubleRow(loadPropertyUserGeneralBeamRowCol) for loadPropertyUserGeneralBeamRowCol in self._Entity]) 8951 8952 @overload 8953 def DeleteScenario(self, scenarioId: int) -> bool: ... 8954 8955 @overload 8956 def DeleteScenario(self, scenarioName: str) -> bool: ... 8957 8958 @overload 8959 def Get(self, name: str) -> LoadPropertyUserGeneralBeamDoubleRow: ... 8960 8961 @overload 8962 def Get(self, id: int) -> LoadPropertyUserGeneralBeamDoubleRow: ... 8963 8964 def DeleteScenario(self, item1 = None) -> bool: 8965 if isinstance(item1, int): 8966 return bool(super().DeleteScenario(item1)) 8967 8968 if isinstance(item1, str): 8969 return bool(super().DeleteScenario(item1)) 8970 8971 return self._Entity.DeleteScenario(item1) 8972 8973 def Get(self, item1 = None) -> LoadPropertyUserGeneralBeamDoubleRow: 8974 if isinstance(item1, str): 8975 return LoadPropertyUserGeneralBeamDoubleRow(super().Get(item1)) 8976 8977 if isinstance(item1, int): 8978 return LoadPropertyUserGeneralBeamDoubleRow(super().Get(item1)) 8979 8980 return self._Entity.Get(item1) 8981 8982 def __getitem__(self, index: int): 8983 return self.LoadPropertyUserGeneralBeamRowColList[index] 8984 8985 def __iter__(self): 8986 yield from self.LoadPropertyUserGeneralBeamRowColList 8987 8988 def __len__(self): 8989 return len(self.LoadPropertyUserGeneralBeamRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
8973 def Get(self, item1 = None) -> LoadPropertyUserGeneralBeamDoubleRow: 8974 if isinstance(item1, str): 8975 return LoadPropertyUserGeneralBeamDoubleRow(super().Get(item1)) 8976 8977 if isinstance(item1, int): 8978 return LoadPropertyUserGeneralBeamDoubleRow(super().Get(item1)) 8979 8980 return self._Entity.Get(item1)
8992class LoadPropertyUserGeneralBeam(LoadProperty): 8993 def __init__(self, loadPropertyUserGeneralBeam: _api.LoadPropertyUserGeneralBeam): 8994 self._Entity = loadPropertyUserGeneralBeam 8995 8996 @property 8997 def UserGeneralRows(self) -> LoadPropertyUserGeneralBeamRowCol: 8998 result = self._Entity.UserGeneralRows 8999 return LoadPropertyUserGeneralBeamRowCol(result) if result is not None else None 9000 9001 @property 9002 def IsIncludingThermal(self) -> bool: 9003 return self._Entity.IsIncludingThermal 9004 9005 @IsIncludingThermal.setter 9006 def IsIncludingThermal(self, value: bool) -> None: 9007 self._Entity.IsIncludingThermal = value
Represents an entity with an ID and Name.
Inherited Members
9010class LoadPropertyUserGeneralBoltedRow(IdEntity): 9011 def __init__(self, loadPropertyUserGeneralBoltedRow: _api.LoadPropertyUserGeneralBoltedRow): 9012 self._Entity = loadPropertyUserGeneralBoltedRow 9013 9014 @property 9015 def LoadPropertyId(self) -> int: 9016 return self._Entity.LoadPropertyId 9017 9018 @property 9019 def LoadScenarioId(self) -> int: 9020 return self._Entity.LoadScenarioId 9021 9022 @property 9023 def Fx(self) -> float: 9024 return self._Entity.Fx 9025 9026 @property 9027 def Fy(self) -> float: 9028 return self._Entity.Fy 9029 9030 @property 9031 def Fz(self) -> float: 9032 return self._Entity.Fz 9033 9034 @property 9035 def Mx(self) -> float: 9036 return self._Entity.Mx 9037 9038 @property 9039 def My(self) -> float: 9040 return self._Entity.My 9041 9042 @property 9043 def Mz(self) -> float: 9044 return self._Entity.Mz 9045 9046 @property 9047 def NxBypass(self) -> float: 9048 return self._Entity.NxBypass 9049 9050 @property 9051 def NyBypass(self) -> float: 9052 return self._Entity.NyBypass 9053 9054 @property 9055 def NxyBypass(self) -> float: 9056 return self._Entity.NxyBypass 9057 9058 @property 9059 def LimitFactor(self) -> float: 9060 return self._Entity.LimitFactor 9061 9062 @property 9063 def UltimateFactor(self) -> float: 9064 return self._Entity.UltimateFactor 9065 9066 @Fx.setter 9067 def Fx(self, value: float) -> None: 9068 self._Entity.Fx = value 9069 9070 @Fy.setter 9071 def Fy(self, value: float) -> None: 9072 self._Entity.Fy = value 9073 9074 @Fz.setter 9075 def Fz(self, value: float) -> None: 9076 self._Entity.Fz = value 9077 9078 @Mx.setter 9079 def Mx(self, value: float) -> None: 9080 self._Entity.Mx = value 9081 9082 @My.setter 9083 def My(self, value: float) -> None: 9084 self._Entity.My = value 9085 9086 @Mz.setter 9087 def Mz(self, value: float) -> None: 9088 self._Entity.Mz = value 9089 9090 @NxBypass.setter 9091 def NxBypass(self, value: float) -> None: 9092 self._Entity.NxBypass = value 9093 9094 @NyBypass.setter 9095 def NyBypass(self, value: float) -> None: 9096 self._Entity.NyBypass = value 9097 9098 @NxyBypass.setter 9099 def NxyBypass(self, value: float) -> None: 9100 self._Entity.NxyBypass = value 9101 9102 @LimitFactor.setter 9103 def LimitFactor(self, value: float) -> None: 9104 self._Entity.LimitFactor = value 9105 9106 @UltimateFactor.setter 9107 def UltimateFactor(self, value: float) -> None: 9108 self._Entity.UltimateFactor = value
Represents an entity with an ID.
9111class LoadPropertyUserGeneralBoltedRowCol(IdEntityCol[LoadPropertyUserGeneralBoltedRow]): 9112 def __init__(self, loadPropertyUserGeneralBoltedRowCol: _api.LoadPropertyUserGeneralBoltedRowCol): 9113 self._Entity = loadPropertyUserGeneralBoltedRowCol 9114 self._CollectedClass = LoadPropertyUserGeneralBoltedRow 9115 9116 @property 9117 def LoadPropertyUserGeneralBoltedRowColList(self) -> tuple[LoadPropertyUserGeneralBoltedRow]: 9118 return tuple([LoadPropertyUserGeneralBoltedRow(loadPropertyUserGeneralBoltedRowCol) for loadPropertyUserGeneralBoltedRowCol in self._Entity]) 9119 9120 def AddScenario(self) -> None: 9121 ''' 9122 Adds a load scenario with default values 9123 ''' 9124 return self._Entity.AddScenario() 9125 9126 def DeleteScenario(self, scenarioId: int) -> bool: 9127 return self._Entity.DeleteScenario(scenarioId) 9128 9129 def __getitem__(self, index: int): 9130 return self.LoadPropertyUserGeneralBoltedRowColList[index] 9131 9132 def __iter__(self): 9133 yield from self.LoadPropertyUserGeneralBoltedRowColList 9134 9135 def __len__(self): 9136 return len(self.LoadPropertyUserGeneralBoltedRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
9120 def AddScenario(self) -> None: 9121 ''' 9122 Adds a load scenario with default values 9123 ''' 9124 return self._Entity.AddScenario()
Adds a load scenario with default values
Inherited Members
9139class LoadPropertyUserGeneralBolted(LoadProperty): 9140 def __init__(self, loadPropertyUserGeneralBolted: _api.LoadPropertyUserGeneralBolted): 9141 self._Entity = loadPropertyUserGeneralBolted 9142 9143 @property 9144 def UserGeneralBoltedRows(self) -> LoadPropertyUserGeneralBoltedRowCol: 9145 result = self._Entity.UserGeneralBoltedRows 9146 return LoadPropertyUserGeneralBoltedRowCol(result) if result is not None else None
Represents an entity with an ID and Name.
Inherited Members
9149class LoadPropertyUserGeneralBondedRow(IdEntity): 9150 def __init__(self, loadPropertyUserGeneralBondedRow: _api.LoadPropertyUserGeneralBondedRow): 9151 self._Entity = loadPropertyUserGeneralBondedRow 9152 9153 @property 9154 def LoadPropertyId(self) -> int: 9155 return self._Entity.LoadPropertyId 9156 9157 @property 9158 def JointConceptId(self) -> types.JointConceptId: 9159 return types.JointConceptId[self._Entity.JointConceptId.ToString()] 9160 9161 @property 9162 def BondedBcId(self) -> int: 9163 return self._Entity.BondedBcId 9164 9165 @property 9166 def AxialType(self) -> types.BoundaryConditionType: 9167 return types.BoundaryConditionType[self._Entity.AxialType.ToString()] 9168 9169 @property 9170 def MomentType(self) -> types.BoundaryConditionType: 9171 return types.BoundaryConditionType[self._Entity.MomentType.ToString()] 9172 9173 @property 9174 def TransverseType(self) -> types.BoundaryConditionType: 9175 return types.BoundaryConditionType[self._Entity.TransverseType.ToString()] 9176 9177 @property 9178 def ShearType(self) -> types.BoundaryConditionType: 9179 return types.BoundaryConditionType[self._Entity.ShearType.ToString()] 9180 9181 @property 9182 def Axial(self) -> float: 9183 return self._Entity.Axial 9184 9185 @property 9186 def Moment(self) -> float: 9187 return self._Entity.Moment 9188 9189 @property 9190 def Transverse(self) -> float: 9191 return self._Entity.Transverse 9192 9193 @property 9194 def Shear(self) -> float: 9195 return self._Entity.Shear 9196 9197 @AxialType.setter 9198 def AxialType(self, value: types.BoundaryConditionType) -> None: 9199 self._Entity.AxialType = _types.BoundaryConditionType(value.value) 9200 9201 @MomentType.setter 9202 def MomentType(self, value: types.BoundaryConditionType) -> None: 9203 self._Entity.MomentType = _types.BoundaryConditionType(value.value) 9204 9205 @TransverseType.setter 9206 def TransverseType(self, value: types.BoundaryConditionType) -> None: 9207 self._Entity.TransverseType = _types.BoundaryConditionType(value.value) 9208 9209 @ShearType.setter 9210 def ShearType(self, value: types.BoundaryConditionType) -> None: 9211 self._Entity.ShearType = _types.BoundaryConditionType(value.value) 9212 9213 @Axial.setter 9214 def Axial(self, value: float) -> None: 9215 self._Entity.Axial = value 9216 9217 @Moment.setter 9218 def Moment(self, value: float) -> None: 9219 self._Entity.Moment = value 9220 9221 @Transverse.setter 9222 def Transverse(self, value: float) -> None: 9223 self._Entity.Transverse = value 9224 9225 @Shear.setter 9226 def Shear(self, value: float) -> None: 9227 self._Entity.Shear = value 9228 9229 def UpdateRow(self) -> None: 9230 return self._Entity.UpdateRow()
Represents an entity with an ID.
9233class LoadPropertyUserGeneralBondedRowCol(IdEntityCol[LoadPropertyUserGeneralBondedRow]): 9234 def __init__(self, loadPropertyUserGeneralBondedRowCol: _api.LoadPropertyUserGeneralBondedRowCol): 9235 self._Entity = loadPropertyUserGeneralBondedRowCol 9236 self._CollectedClass = LoadPropertyUserGeneralBondedRow 9237 9238 @property 9239 def LoadPropertyUserGeneralBondedRowColList(self) -> tuple[LoadPropertyUserGeneralBondedRow]: 9240 return tuple([LoadPropertyUserGeneralBondedRow(loadPropertyUserGeneralBondedRowCol) for loadPropertyUserGeneralBondedRowCol in self._Entity]) 9241 9242 def __getitem__(self, index: int): 9243 return self.LoadPropertyUserGeneralBondedRowColList[index] 9244 9245 def __iter__(self): 9246 yield from self.LoadPropertyUserGeneralBondedRowColList 9247 9248 def __len__(self): 9249 return len(self.LoadPropertyUserGeneralBondedRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
9252class LoadPropertyJoint(IdEntity): 9253 def __init__(self, loadPropertyJoint: _api.LoadPropertyJoint): 9254 self._Entity = loadPropertyJoint 9255 9256 @property 9257 def UserGeneralBondedRows(self) -> LoadPropertyUserGeneralBondedRowCol: 9258 result = self._Entity.UserGeneralBondedRows 9259 return LoadPropertyUserGeneralBondedRowCol(result) if result is not None else None 9260 9261 @property 9262 def LoadPropertyId(self) -> int: 9263 return self._Entity.LoadPropertyId 9264 9265 @property 9266 def JConceptId(self) -> types.JointConceptId: 9267 return types.JointConceptId[self._Entity.JConceptId.ToString()] 9268 9269 @property 9270 def Ex(self) -> float: 9271 return self._Entity.Ex 9272 9273 @property 9274 def Kx(self) -> float: 9275 return self._Entity.Kx 9276 9277 @property 9278 def Kxy(self) -> float: 9279 return self._Entity.Kxy 9280 9281 @property 9282 def Temperature(self) -> float: 9283 return self._Entity.Temperature 9284 9285 @JConceptId.setter 9286 def JConceptId(self, value: types.JointConceptId) -> None: 9287 self._Entity.JConceptId = _types.JointConceptId(value.value) 9288 9289 @Ex.setter 9290 def Ex(self, value: float) -> None: 9291 self._Entity.Ex = value 9292 9293 @Kx.setter 9294 def Kx(self, value: float) -> None: 9295 self._Entity.Kx = value 9296 9297 @Kxy.setter 9298 def Kxy(self, value: float) -> None: 9299 self._Entity.Kxy = value 9300 9301 @Temperature.setter 9302 def Temperature(self, value: float) -> None: 9303 self._Entity.Temperature = value
Represents an entity with an ID.
9306class LoadPropertyUserGeneralBonded(LoadProperty): 9307 def __init__(self, loadPropertyUserGeneralBonded: _api.LoadPropertyUserGeneralBonded): 9308 self._Entity = loadPropertyUserGeneralBonded 9309 9310 @property 9311 def LoadPropertyJoint(self) -> LoadPropertyJoint: 9312 result = self._Entity.LoadPropertyJoint 9313 return LoadPropertyJoint(result) if result is not None else None
Represents an entity with an ID and Name.
Inherited Members
9316class LoadPropertyUserGeneralPanelDoubleRow(LoadPropertyUserGeneralDoubleRow): 9317 def __init__(self, loadPropertyUserGeneralPanelDoubleRow: _api.LoadPropertyUserGeneralPanelDoubleRow): 9318 self._Entity = loadPropertyUserGeneralPanelDoubleRow 9319 9320 @property 9321 def MechanicalRow(self) -> LoadPropertyUserRow: 9322 thisClass = type(self._Entity.MechanicalRow).__name__ 9323 givenClass = LoadPropertyUserRow 9324 for subclass in LoadPropertyUserRow.__subclasses__(): 9325 if subclass.__name__ == thisClass: 9326 givenClass = subclass 9327 result = self._Entity.MechanicalRow 9328 return givenClass(result) if result is not None else None 9329 9330 @property 9331 def ThermalRow(self) -> LoadPropertyUserRow: 9332 thisClass = type(self._Entity.ThermalRow).__name__ 9333 givenClass = LoadPropertyUserRow 9334 for subclass in LoadPropertyUserRow.__subclasses__(): 9335 if subclass.__name__ == thisClass: 9336 givenClass = subclass 9337 result = self._Entity.ThermalRow 9338 return givenClass(result) if result is not None else None 9339 9340 @property 9341 def NxType(self) -> types.BoundaryConditionType: 9342 return types.BoundaryConditionType[self._Entity.NxType.ToString()] 9343 9344 @property 9345 def NyType(self) -> types.BoundaryConditionType: 9346 return types.BoundaryConditionType[self._Entity.NyType.ToString()] 9347 9348 @property 9349 def NxyType(self) -> types.BoundaryConditionType: 9350 return types.BoundaryConditionType[self._Entity.NxyType.ToString()] 9351 9352 @property 9353 def MxType(self) -> types.BoundaryConditionType: 9354 return types.BoundaryConditionType[self._Entity.MxType.ToString()] 9355 9356 @property 9357 def MyType(self) -> types.BoundaryConditionType: 9358 return types.BoundaryConditionType[self._Entity.MyType.ToString()] 9359 9360 @property 9361 def MxyType(self) -> types.BoundaryConditionType: 9362 return types.BoundaryConditionType[self._Entity.MxyType.ToString()] 9363 9364 @property 9365 def QxType(self) -> types.BoundaryConditionType: 9366 return types.BoundaryConditionType[self._Entity.QxType.ToString()] 9367 9368 @property 9369 def QyType(self) -> types.BoundaryConditionType: 9370 return types.BoundaryConditionType[self._Entity.QyType.ToString()] 9371 9372 def SetNxType(self, type: types.BoundaryConditionType) -> None: 9373 return self._Entity.SetNxType(_types.BoundaryConditionType(type.value)) 9374 9375 def SetNyType(self, type: types.BoundaryConditionType) -> None: 9376 return self._Entity.SetNyType(_types.BoundaryConditionType(type.value)) 9377 9378 def SetNxyType(self, type: types.BoundaryConditionType) -> None: 9379 return self._Entity.SetNxyType(_types.BoundaryConditionType(type.value)) 9380 9381 def SetMxType(self, type: types.BoundaryConditionType) -> None: 9382 return self._Entity.SetMxType(_types.BoundaryConditionType(type.value)) 9383 9384 def SetMyType(self, type: types.BoundaryConditionType) -> None: 9385 return self._Entity.SetMyType(_types.BoundaryConditionType(type.value)) 9386 9387 def SetMxyType(self, type: types.BoundaryConditionType) -> None: 9388 return self._Entity.SetMxyType(_types.BoundaryConditionType(type.value)) 9389 9390 def SetQxType(self, type: types.BoundaryConditionType) -> None: 9391 return self._Entity.SetQxType(_types.BoundaryConditionType(type.value)) 9392 9393 def SetQyType(self, type: types.BoundaryConditionType) -> None: 9394 return self._Entity.SetQyType(_types.BoundaryConditionType(type.value))
Represents an entity with an ID and Name.
9320 @property 9321 def MechanicalRow(self) -> LoadPropertyUserRow: 9322 thisClass = type(self._Entity.MechanicalRow).__name__ 9323 givenClass = LoadPropertyUserRow 9324 for subclass in LoadPropertyUserRow.__subclasses__(): 9325 if subclass.__name__ == thisClass: 9326 givenClass = subclass 9327 result = self._Entity.MechanicalRow 9328 return givenClass(result) if result is not None else None
9330 @property 9331 def ThermalRow(self) -> LoadPropertyUserRow: 9332 thisClass = type(self._Entity.ThermalRow).__name__ 9333 givenClass = LoadPropertyUserRow 9334 for subclass in LoadPropertyUserRow.__subclasses__(): 9335 if subclass.__name__ == thisClass: 9336 givenClass = subclass 9337 result = self._Entity.ThermalRow 9338 return givenClass(result) if result is not None else None
Inherited Members
9397class LoadPropertyUserGeneralPanelRowCol(LoadPropertyUserGeneralRowCol[LoadPropertyUserGeneralPanelDoubleRow]): 9398 def __init__(self, loadPropertyUserGeneralPanelRowCol: _api.LoadPropertyUserGeneralPanelRowCol): 9399 self._Entity = loadPropertyUserGeneralPanelRowCol 9400 self._CollectedClass = LoadPropertyUserGeneralPanelDoubleRow 9401 9402 @property 9403 def LoadPropertyUserGeneralPanelRowColList(self) -> tuple[LoadPropertyUserGeneralPanelDoubleRow]: 9404 return tuple([LoadPropertyUserGeneralPanelDoubleRow(loadPropertyUserGeneralPanelRowCol) for loadPropertyUserGeneralPanelRowCol in self._Entity]) 9405 9406 @overload 9407 def DeleteScenario(self, scenarioId: int) -> bool: ... 9408 9409 @overload 9410 def DeleteScenario(self, scenarioName: str) -> bool: ... 9411 9412 @overload 9413 def Get(self, name: str) -> LoadPropertyUserGeneralPanelDoubleRow: ... 9414 9415 @overload 9416 def Get(self, id: int) -> LoadPropertyUserGeneralPanelDoubleRow: ... 9417 9418 def DeleteScenario(self, item1 = None) -> bool: 9419 if isinstance(item1, int): 9420 return bool(super().DeleteScenario(item1)) 9421 9422 if isinstance(item1, str): 9423 return bool(super().DeleteScenario(item1)) 9424 9425 return self._Entity.DeleteScenario(item1) 9426 9427 def Get(self, item1 = None) -> LoadPropertyUserGeneralPanelDoubleRow: 9428 if isinstance(item1, str): 9429 return LoadPropertyUserGeneralPanelDoubleRow(super().Get(item1)) 9430 9431 if isinstance(item1, int): 9432 return LoadPropertyUserGeneralPanelDoubleRow(super().Get(item1)) 9433 9434 return self._Entity.Get(item1) 9435 9436 def __getitem__(self, index: int): 9437 return self.LoadPropertyUserGeneralPanelRowColList[index] 9438 9439 def __iter__(self): 9440 yield from self.LoadPropertyUserGeneralPanelRowColList 9441 9442 def __len__(self): 9443 return len(self.LoadPropertyUserGeneralPanelRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
9427 def Get(self, item1 = None) -> LoadPropertyUserGeneralPanelDoubleRow: 9428 if isinstance(item1, str): 9429 return LoadPropertyUserGeneralPanelDoubleRow(super().Get(item1)) 9430 9431 if isinstance(item1, int): 9432 return LoadPropertyUserGeneralPanelDoubleRow(super().Get(item1)) 9433 9434 return self._Entity.Get(item1)
9446class LoadPropertyUserGeneralPanel(LoadProperty): 9447 def __init__(self, loadPropertyUserGeneralPanel: _api.LoadPropertyUserGeneralPanel): 9448 self._Entity = loadPropertyUserGeneralPanel 9449 9450 @property 9451 def UserGeneralRows(self) -> LoadPropertyUserGeneralPanelRowCol: 9452 result = self._Entity.UserGeneralRows 9453 return LoadPropertyUserGeneralPanelRowCol(result) if result is not None else None 9454 9455 @property 9456 def IsIncludingThermal(self) -> bool: 9457 return self._Entity.IsIncludingThermal 9458 9459 @IsIncludingThermal.setter 9460 def IsIncludingThermal(self, value: bool) -> None: 9461 self._Entity.IsIncludingThermal = value 9462 9463 def SetIsZeroCurvature(self, isZeroCurvature: bool) -> None: 9464 return self._Entity.SetIsZeroCurvature(isZeroCurvature)
Represents an entity with an ID and Name.
Inherited Members
9467class JointSelectionDesignResult(JointDesignResult): 9468 def __init__(self, jointSelectionDesignResult: _api.JointSelectionDesignResult): 9469 self._Entity = jointSelectionDesignResult 9470 9471 @property 9472 def JointSelectionId(self) -> types.JointSelectionId: 9473 return types.JointSelectionId[self._Entity.JointSelectionId.ToString()]
Represents an entity with an ID.
9476class JointFastenerDesignResult(JointSelectionDesignResult): 9477 def __init__(self, jointFastenerDesignResult: _api.JointFastenerDesignResult): 9478 self._Entity = jointFastenerDesignResult 9479 9480 @property 9481 def FastenerBoltId(self) -> int: 9482 return self._Entity.FastenerBoltId 9483 9484 @property 9485 def FastenerCodeId(self) -> int: 9486 return self._Entity.FastenerCodeId
Represents an entity with an ID.
Inherited Members
9489class JointMaterialDesignResult(JointSelectionDesignResult): 9490 def __init__(self, jointMaterialDesignResult: _api.JointMaterialDesignResult): 9491 self._Entity = jointMaterialDesignResult 9492 9493 @property 9494 def MaterialId(self) -> int: 9495 return self._Entity.MaterialId 9496 9497 @property 9498 def MaterialType(self) -> types.MaterialType: 9499 ''' 9500 Represents a material's type. 9501 ''' 9502 return types.MaterialType[self._Entity.MaterialType.ToString()]
Represents an entity with an ID.
9497 @property 9498 def MaterialType(self) -> types.MaterialType: 9499 ''' 9500 Represents a material's type. 9501 ''' 9502 return types.MaterialType[self._Entity.MaterialType.ToString()]
Represents a material's type.
Inherited Members
9505class JointRangeDesignResult(JointDesignResult): 9506 def __init__(self, jointRangeDesignResult: _api.JointRangeDesignResult): 9507 self._Entity = jointRangeDesignResult 9508 9509 @property 9510 def JointRangeId(self) -> types.JointRangeId: 9511 return types.JointRangeId[self._Entity.JointRangeId.ToString()] 9512 9513 @property 9514 def Value(self) -> float: 9515 return self._Entity.Value
Represents an entity with an ID.
9518class JointRivetDesignResult(JointSelectionDesignResult): 9519 def __init__(self, jointRivetDesignResult: _api.JointRivetDesignResult): 9520 self._Entity = jointRivetDesignResult 9521 9522 @property 9523 def RivetId(self) -> int: 9524 return self._Entity.RivetId 9525 9526 @property 9527 def RivetDiameterId(self) -> int: 9528 return self._Entity.RivetDiameterId
Represents an entity with an ID.
Inherited Members
9531class Environment(ABC): 9532 ''' 9533 Represents HyperX's execution environment (where HyperX is installed). 9534 ''' 9535 def __init__(self, environment: _api.Environment): 9536 self._Entity = environment 9537 9538 def SetLocation(location: str) -> None: 9539 return _api.Environment.SetLocation(location) 9540 9541 def Initialize() -> None: 9542 ''' 9543 Initialize the HyperX scripting environment. 9544 ''' 9545 return _api.Environment.Initialize()
Represents HyperX's execution environment (where HyperX is installed).
9548class FailureCriterionSetting(FailureSetting): 9549 ''' 9550 Setting for a Failure Criteria. 9551 ''' 9552 def __init__(self, failureCriterionSetting: _api.FailureCriterionSetting): 9553 self._Entity = failureCriterionSetting
Setting for a Failure Criteria.
9556class FailureModeSetting(FailureSetting): 9557 ''' 9558 Setting for a Failure Mode. 9559 ''' 9560 def __init__(self, failureModeSetting: _api.FailureModeSetting): 9561 self._Entity = failureModeSetting
Setting for a Failure Mode.
9564class HelperFunctions(ABC): 9565 def __init__(self, helperFunctions: _api.HelperFunctions): 9566 self._Entity = helperFunctions 9567 9568 def NullableSingle(input: float) -> float: 9569 return _api.HelperFunctions.NullableSingle(input)
9579class LaminatePlyData: 9580 ''' 9581 Per ply data for Laminate materials 9582 ''' 9583 def __init__(self, laminatePlyData: _api.LaminatePlyData): 9584 self._Entity = laminatePlyData 9585 9586 @property 9587 def MaterialId(self) -> int: 9588 return self._Entity.MaterialId 9589 9590 @property 9591 def PlyId(self) -> int: 9592 return self._Entity.PlyId 9593 9594 @property 9595 def PlyMaterialId(self) -> int: 9596 return self._Entity.PlyMaterialId 9597 9598 @property 9599 def PlyMaterialType(self) -> types.MaterialType: 9600 ''' 9601 Represents a material's type. 9602 ''' 9603 return types.MaterialType[self._Entity.PlyMaterialType.ToString()] 9604 9605 @property 9606 def Angle(self) -> float: 9607 return self._Entity.Angle 9608 9609 @property 9610 def Thickness(self) -> float: 9611 return self._Entity.Thickness 9612 9613 @property 9614 def IsFabric(self) -> bool: 9615 return self._Entity.IsFabric 9616 9617 @property 9618 def FamilyPlyId(self) -> int: 9619 return self._Entity.FamilyPlyId 9620 9621 @property 9622 def OriginalPlyId(self) -> int: 9623 return self._Entity.OriginalPlyId 9624 9625 @property 9626 def OriginalFamilyPlyId(self) -> int: 9627 return self._Entity.OriginalFamilyPlyId 9628 9629 @property 9630 def DisplaySequenceId(self) -> int: 9631 return self._Entity.DisplaySequenceId 9632 9633 @property 9634 def PlyStiffenerSubType(self) -> types.PlyStiffenerSubType: 9635 return types.PlyStiffenerSubType[self._Entity.PlyStiffenerSubType.ToString()] 9636 9637 @property 9638 def Object1(self) -> bool: 9639 return self._Entity.Object1 9640 9641 @property 9642 def Object2(self) -> bool: 9643 return self._Entity.Object2 9644 9645 @property 9646 def Object3(self) -> bool: 9647 return self._Entity.Object3 9648 9649 @property 9650 def IsInverted(self) -> bool: 9651 return self._Entity.IsInverted 9652 9653 @property 9654 def IsFullStructure(self) -> bool: 9655 return self._Entity.IsFullStructure 9656 9657 @property 9658 def UseTrueFiberDirection(self) -> bool: 9659 return self._Entity.UseTrueFiberDirection 9660 9661 @property 9662 def IsInFoot(self) -> bool: 9663 return self._Entity.IsInFoot 9664 9665 @property 9666 def IsInWeb(self) -> bool: 9667 return self._Entity.IsInWeb 9668 9669 @property 9670 def IsInCap(self) -> bool: 9671 return self._Entity.IsInCap 9672 9673 def SetMaterial(self, matId: int) -> bool: 9674 return self._Entity.SetMaterial(matId) 9675 9676 def SetAngle(self, angle: float) -> bool: 9677 return self._Entity.SetAngle(angle)
Per ply data for Laminate materials
9598 @property 9599 def PlyMaterialType(self) -> types.MaterialType: 9600 ''' 9601 Represents a material's type. 9602 ''' 9603 return types.MaterialType[self._Entity.PlyMaterialType.ToString()]
Represents a material's type.
9680class Beam(Zone): 9681 def __init__(self, beam: _api.Beam): 9682 self._Entity = beam 9683 9684 @property 9685 def Length(self) -> float: 9686 return self._Entity.Length 9687 9688 @property 9689 def Phi(self) -> float: 9690 return self._Entity.Phi 9691 9692 @property 9693 def K1(self) -> float: 9694 return self._Entity.K1 9695 9696 @property 9697 def K2(self) -> float: 9698 return self._Entity.K2 9699 9700 @property 9701 def ReferencePlane(self) -> types.ReferencePlaneBeam: 9702 return types.ReferencePlaneBeam[self._Entity.ReferencePlane.ToString()] 9703 9704 @Phi.setter 9705 def Phi(self, value: float) -> None: 9706 self._Entity.Phi = value 9707 9708 @K1.setter 9709 def K1(self, value: float) -> None: 9710 self._Entity.K1 = value 9711 9712 @K2.setter 9713 def K2(self, value: float) -> None: 9714 self._Entity.K2 = value 9715 9716 @ReferencePlane.setter 9717 def ReferencePlane(self, value: types.ReferencePlaneBeam) -> None: 9718 self._Entity.ReferencePlane = _types.ReferencePlaneBeam(value.value)
Abstract for regular Zones (not Panel Segments).
Inherited Members
- ZoneBase
- Centroid
- Id
- Weight
- NonOptimumFactor
- AddedWeight
- SuperimposePanel
- BucklingImperfection
- IsBeamColumn
- SuperimposeBoundaryCondition
- IsZeroOutFeaMoments
- IsZeroOutFeaTransverseShears
- MechanicalLimit
- MechanicalUltimate
- ThermalHelp
- ThermalHurt
- FatigueKTSkin
- FatigueKTStiff
- XSpan
- EARequired
- EI1Required
- EI2Required
- GJRequired
- EAAuto
- EI1Auto
- EI2Auto
- GJAuto
- Ex
- Dmid
- GetObjectName
- GetConceptName
- GetZoneDesignResults
- RenumberZone
- GetAllResults
- GetControllingResult
- GetMinimumMargin
9721class ZoneBulkUpdaterBase(BulkUpdaterBase): 9722 def __init__(self, zoneBulkUpdaterBase: _api.ZoneBulkUpdaterBase): 9723 self._Entity = zoneBulkUpdaterBase
Inherited Members
9726class BeamBulkUpdater(ZoneBulkUpdaterBase): 9727 def __init__(self, beamBulkUpdater: _api.BeamBulkUpdater): 9728 self._Entity = beamBulkUpdater 9729 9730 def GetBulkUpdater(application: Application, items: list[Beam]) -> BeamBulkUpdater: 9731 itemsList = List[_api.Beam]() 9732 if items is not None: 9733 for thing in items: 9734 if thing is not None: 9735 itemsList.Add(thing._Entity) 9736 return BeamBulkUpdater(_api.BeamBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
9730 def GetBulkUpdater(application: Application, items: list[Beam]) -> BeamBulkUpdater: 9731 itemsList = List[_api.Beam]() 9732 if items is not None: 9733 for thing in items: 9734 if thing is not None: 9735 itemsList.Add(thing._Entity) 9736 return BeamBulkUpdater(_api.BeamBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
9739class Panel(Zone): 9740 def __init__(self, panel: _api.Panel): 9741 self._Entity = panel 9742 9743 @property 9744 def Area(self) -> float: 9745 return self._Entity.Area 9746 9747 @property 9748 def ReferencePlane(self) -> types.ReferencePlanePanel: 9749 return types.ReferencePlanePanel[self._Entity.ReferencePlane.ToString()] 9750 9751 @property 9752 def AddedOffset(self) -> float: 9753 return self._Entity.AddedOffset 9754 9755 @property 9756 def YSpan(self) -> float: 9757 return self._Entity.YSpan 9758 9759 @property 9760 def IsCurved(self) -> bool: 9761 return self._Entity.IsCurved 9762 9763 @property 9764 def Radius(self) -> float: 9765 return self._Entity.Radius 9766 9767 @property 9768 def IsFullCylinder(self) -> bool: 9769 return self._Entity.IsFullCylinder 9770 9771 @property 9772 def BucklingMode(self) -> types.ZoneBucklingMode: 9773 return types.ZoneBucklingMode[self._Entity.BucklingMode.ToString()] 9774 9775 @property 9776 def PerformLocalPostbuckling(self) -> bool: 9777 return self._Entity.PerformLocalPostbuckling 9778 9779 @property 9780 def A11Required(self) -> float: 9781 return self._Entity.A11Required 9782 9783 @property 9784 def A22Required(self) -> float: 9785 return self._Entity.A22Required 9786 9787 @property 9788 def A33Required(self) -> float: 9789 return self._Entity.A33Required 9790 9791 @property 9792 def D11Required(self) -> float: 9793 return self._Entity.D11Required 9794 9795 @property 9796 def D22Required(self) -> float: 9797 return self._Entity.D22Required 9798 9799 @property 9800 def D33Required(self) -> float: 9801 return self._Entity.D33Required 9802 9803 @property 9804 def A11Auto(self) -> float: 9805 return self._Entity.A11Auto 9806 9807 @property 9808 def A22Auto(self) -> float: 9809 return self._Entity.A22Auto 9810 9811 @property 9812 def A33Auto(self) -> float: 9813 return self._Entity.A33Auto 9814 9815 @property 9816 def D11Auto(self) -> float: 9817 return self._Entity.D11Auto 9818 9819 @property 9820 def D22Auto(self) -> float: 9821 return self._Entity.D22Auto 9822 9823 @property 9824 def D33Auto(self) -> float: 9825 return self._Entity.D33Auto 9826 9827 @property 9828 def Ey(self) -> float: 9829 return self._Entity.Ey 9830 9831 @property 9832 def Kx(self) -> float: 9833 return self._Entity.Kx 9834 9835 @property 9836 def Ky(self) -> float: 9837 return self._Entity.Ky 9838 9839 @ReferencePlane.setter 9840 def ReferencePlane(self, value: types.ReferencePlanePanel) -> None: 9841 self._Entity.ReferencePlane = _types.ReferencePlanePanel(value.value) 9842 9843 @AddedOffset.setter 9844 def AddedOffset(self, value: float) -> None: 9845 self._Entity.AddedOffset = value 9846 9847 @YSpan.setter 9848 def YSpan(self, value: float) -> None: 9849 self._Entity.YSpan = value 9850 9851 @IsCurved.setter 9852 def IsCurved(self, value: bool) -> None: 9853 self._Entity.IsCurved = value 9854 9855 @Radius.setter 9856 def Radius(self, value: float) -> None: 9857 self._Entity.Radius = value 9858 9859 @IsFullCylinder.setter 9860 def IsFullCylinder(self, value: bool) -> None: 9861 self._Entity.IsFullCylinder = value 9862 9863 @BucklingMode.setter 9864 def BucklingMode(self, value: types.ZoneBucklingMode) -> None: 9865 self._Entity.BucklingMode = _types.ZoneBucklingMode(value.value) 9866 9867 @PerformLocalPostbuckling.setter 9868 def PerformLocalPostbuckling(self, value: bool) -> None: 9869 self._Entity.PerformLocalPostbuckling = value 9870 9871 @A11Required.setter 9872 def A11Required(self, value: float) -> None: 9873 self._Entity.A11Required = value 9874 9875 @A22Required.setter 9876 def A22Required(self, value: float) -> None: 9877 self._Entity.A22Required = value 9878 9879 @A33Required.setter 9880 def A33Required(self, value: float) -> None: 9881 self._Entity.A33Required = value 9882 9883 @D11Required.setter 9884 def D11Required(self, value: float) -> None: 9885 self._Entity.D11Required = value 9886 9887 @D22Required.setter 9888 def D22Required(self, value: float) -> None: 9889 self._Entity.D22Required = value 9890 9891 @D33Required.setter 9892 def D33Required(self, value: float) -> None: 9893 self._Entity.D33Required = value 9894 9895 @Ey.setter 9896 def Ey(self, value: float) -> None: 9897 self._Entity.Ey = value 9898 9899 @Kx.setter 9900 def Kx(self, value: float) -> None: 9901 self._Entity.Kx = value 9902 9903 @Ky.setter 9904 def Ky(self, value: float) -> None: 9905 self._Entity.Ky = value
Abstract for regular Zones (not Panel Segments).
Inherited Members
- ZoneBase
- Centroid
- Id
- Weight
- NonOptimumFactor
- AddedWeight
- SuperimposePanel
- BucklingImperfection
- IsBeamColumn
- SuperimposeBoundaryCondition
- IsZeroOutFeaMoments
- IsZeroOutFeaTransverseShears
- MechanicalLimit
- MechanicalUltimate
- ThermalHelp
- ThermalHurt
- FatigueKTSkin
- FatigueKTStiff
- XSpan
- EARequired
- EI1Required
- EI2Required
- GJRequired
- EAAuto
- EI1Auto
- EI2Auto
- GJAuto
- Ex
- Dmid
- GetObjectName
- GetConceptName
- GetZoneDesignResults
- RenumberZone
- GetAllResults
- GetControllingResult
- GetMinimumMargin
9908class PanelBulkUpdater(ZoneBulkUpdaterBase): 9909 def __init__(self, panelBulkUpdater: _api.PanelBulkUpdater): 9910 self._Entity = panelBulkUpdater 9911 9912 def GetBulkUpdater(application: Application, items: list[Panel]) -> PanelBulkUpdater: 9913 itemsList = List[_api.Panel]() 9914 if items is not None: 9915 for thing in items: 9916 if thing is not None: 9917 itemsList.Add(thing._Entity) 9918 return PanelBulkUpdater(_api.PanelBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
9912 def GetBulkUpdater(application: Application, items: list[Panel]) -> PanelBulkUpdater: 9913 itemsList = List[_api.Panel]() 9914 if items is not None: 9915 for thing in items: 9916 if thing is not None: 9917 itemsList.Add(thing._Entity) 9918 return PanelBulkUpdater(_api.PanelBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
9921class PanelSegmentBulkUpdater(ZoneBulkUpdaterBase): 9922 def __init__(self, panelSegmentBulkUpdater: _api.PanelSegmentBulkUpdater): 9923 self._Entity = panelSegmentBulkUpdater 9924 9925 def GetBulkUpdater(application: Application, items: list[PanelSegment]) -> PanelSegmentBulkUpdater: 9926 itemsList = List[_api.PanelSegment]() 9927 if items is not None: 9928 for thing in items: 9929 if thing is not None: 9930 itemsList.Add(thing._Entity) 9931 return PanelSegmentBulkUpdater(_api.PanelSegmentBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
9925 def GetBulkUpdater(application: Application, items: list[PanelSegment]) -> PanelSegmentBulkUpdater: 9926 itemsList = List[_api.PanelSegment]() 9927 if items is not None: 9928 for thing in items: 9929 if thing is not None: 9930 itemsList.Add(thing._Entity) 9931 return PanelSegmentBulkUpdater(_api.PanelSegmentBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
9934class ZoneBulkUpdater(ZoneBulkUpdaterBase): 9935 def __init__(self, zoneBulkUpdater: _api.ZoneBulkUpdater): 9936 self._Entity = zoneBulkUpdater 9937 9938 def GetBulkUpdater(application: Application, items: list[Zone]) -> ZoneBulkUpdater: 9939 itemsList = List[_api.Zone]() 9940 if items is not None: 9941 for thing in items: 9942 if thing is not None: 9943 itemsList.Add(thing._Entity) 9944 return ZoneBulkUpdater(_api.ZoneBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
9938 def GetBulkUpdater(application: Application, items: list[Zone]) -> ZoneBulkUpdater: 9939 itemsList = List[_api.Zone]() 9940 if items is not None: 9941 for thing in items: 9942 if thing is not None: 9943 itemsList.Add(thing._Entity) 9944 return ZoneBulkUpdater(_api.ZoneBulkUpdater.GetBulkUpdater(application._Entity, itemsList))